diff --git a/proxy/conf.d/nginx.toml b/proxy/conf.d/nginx.toml index db737dbe..6586eb9c 100644 --- a/proxy/conf.d/nginx.toml +++ b/proxy/conf.d/nginx.toml @@ -4,4 +4,5 @@ dest = "/etc/nginx/nginx.conf" keys = [ "SERVERS", "PORTS", + "UDP_PORTS", ] diff --git a/proxy/templates/nginx.tmpl b/proxy/templates/nginx.tmpl index 8ad15e90..43e4a286 100644 --- a/proxy/templates/nginx.tmpl +++ b/proxy/templates/nginx.tmpl @@ -11,6 +11,10 @@ events { } stream { + + ####### + # TCP # + ####### {{- range $port := $ports }} upstream server_nodes_{{ $port }} { {{- range $server := $servers }} @@ -25,9 +29,14 @@ stream { proxy_connect_timeout 2s; } {{- end }} + + ####### + # UDP # + ####### + {{- range $port := $udp_ports }} {{- if $port }} - upstream server_nodes_{{ $port }} { + upstream server_nodes_udp_{{ $port }} { {{- range $server := $servers }} server {{ $server }}:{{ $port }} max_fails=1 fail_timeout=10s; {{- end }} @@ -35,7 +44,7 @@ stream { server { listen {{ $port }} udp; - proxy_pass server_nodes_{{ $port }}; + proxy_pass server_nodes_udp_{{ $port }}; proxy_timeout 600; proxy_connect_timeout 2s; }