Serving HTTP/2 and HTTP/3 with Nginx in 2026

Back in 2016 I wrapped nginx in a Docker container just to get HTTP/2 working. I didn&rsquo;t do it out of love for Docker: the server&rsquo;s OpenSSL was too old to do ALPN, and the cleanest way to borrow a modern OpenSSL was to lift one out of an Alpine container. It worked, but it was a hack, and I knew it at the time.