diff --git a/docker/nginx.yml b/docker/nginx.yml index 0baaf14a0629..b7fbc47288cd 100644 --- a/docker/nginx.yml +++ b/docker/nginx.yml @@ -29,7 +29,8 @@ services: hard: 1048576 ports: - "80:80" - - "443:443" + - "443:443/tcp" + - "443:443/udp" # HTTP/3 - "7921:7921" # Git SSH # expose the port to make it reachable docker internally even if the external port mapping changes expose: diff --git a/docker/nginx/artemis-nginx.conf b/docker/nginx/artemis-nginx.conf index fa8f2d0376eb..cbc10836e993 100644 --- a/docker/nginx/artemis-nginx.conf +++ b/docker/nginx/artemis-nginx.conf @@ -18,8 +18,15 @@ server { } server { - listen 443 ssl http2; - listen [::]:443 ssl http2; + listen 443 ssl; + listen 443 quic reuseport; + listen [::]:443 ssl; + listen [::]:443 quic reuseport; + http2 on; + http3 on; + http3_hq on; + quic_retry on; + server_name _; ssl_certificate /certs/fullchain.pem; @@ -36,6 +43,7 @@ server { ssl_stapling on; ssl_stapling_verify on; # ssl_early_data on; + quic_gso on; include includes/artemis-server.conf; } diff --git a/docker/nginx/artemis-server.conf b/docker/nginx/artemis-server.conf index a9eb9d592d54..d00af9b9c3dd 100644 --- a/docker/nginx/artemis-server.conf +++ b/docker/nginx/artemis-server.conf @@ -23,6 +23,8 @@ location / { fastcgi_send_timeout 900s; fastcgi_read_timeout 900s; client_max_body_size 128M; + # used to advertise the availability of HTTP/3 + add_header alt-svc 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000'; } location /api/authenticate {