NIEM / Movement

Movement is an easier, simpler way to explore and use NIEM. Want to join the Movement and contribute to it? Start here.
https://beta.movement.niem.gov
MIT License
24 stars 7 forks source link

Update nginx docker container to use http2. #21

Open smrubin opened 7 years ago

smrubin commented 7 years ago

Current nginx docker container is version 1.6.2 which does not support http2. We should update the nginx install for this image, or use another one with http2 enabled, and then add http2 back in to the nginx config file.

smrubin commented 7 years ago

Update: http2 configuration has been added with the recent upgrade of nginx version >= 1.9.5.

However, some modern browsers (namely Chrome) still won't serve over http2 due to the version of openssl being used and specifically that these browsers only support ALPN and have discontinued support for NPN. To support ALPN, we need at least openssl version 1.0.2, and Debian 8 (jessie) still uses 1.0.1k.

Until the docker version of Debian 8 (jessie) is updated, a new version of Debian is released, or the official nginx image is updated to use a newer version of openssl that supports ALPN, there is no easy fix to get http2 (currently a waiting game).

If we decide in the near future that serving http2 is a must, we can use jessie-backports inside the container. See the following links for resources: https://ma.ttias.be/day-google-chrome-disables-http2-nearly-everyone-may-31st-2016/ https://github.com/nginxinc/docker-nginx/issues/76 https://serverfault.com/questions/732474/nginx-configured-with-http2-doesnt-deliver-http-2 https://serverfault.com/questions/775298/debian-jessie-nginx-with-openssl-1-0-2-to-use-alpn-rather-than-npn https://sergii.rocks/feed/post/nginx-http2-with-alpn-on-debian-8-jessie https://michaelscott.uk/nginx-with-http2-and-alpn-debian