From 7c0df7fd7cce81d42ef9cdf4075dc3f1aeefa7e3 Mon Sep 17 00:00:00 2001 From: Andrew Vos Date: Wed, 10 Sep 2014 17:44:16 +0100 Subject: [PATCH 1/2] Forward X-Forwarded-Proto to containers This ensures that containers checking for ssl (when behind an ELB) will get correct response --- nginx.tmpl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/nginx.tmpl b/nginx.tmpl index 2f1eac4..701fa58 100644 --- a/nginx.tmpl +++ b/nginx.tmpl @@ -49,12 +49,12 @@ server { access_log /proc/self/fd/1; location / { - proxy_pass http://{{ $host }}; - include /etc/nginx/proxy_params; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header Host $http_host; + proxy_redirect false; - # HTTP 1.1 support - proxy_http_version 1.1; - proxy_set_header Connection ""; + proxy_pass http://{{ $host }}; } } {{ end }} From 012cd269d75ec69dcf8e76442218abb646e3cb76 Mon Sep 17 00:00:00 2001 From: Andrew Vos Date: Wed, 17 Sep 2014 19:37:39 +0100 Subject: [PATCH 2/2] Only add source after dependency download This lets docker cache the ADD instruction, giving us a faster build. Also, install docker-gen directly to /usr/local/bin. --- Dockerfile | 10 +++++----- Procfile | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index 06d545e..397c36b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,15 +13,15 @@ RUN echo "daemon off;" >> /etc/nginx/nginx.conf #fix for long server names RUN sed -i 's/# server_names_hash_bucket/server_names_hash_bucket/g' /etc/nginx/nginx.conf -RUN mkdir /app -WORKDIR /app -ADD . /app - RUN wget -P /usr/local/bin https://godist.herokuapp.com/projects/ddollar/forego/releases/current/linux-amd64/forego RUN chmod u+x /usr/local/bin/forego RUN wget https://github.com/jwilder/docker-gen/releases/download/0.3.2/docker-gen-linux-amd64-0.3.2.tar.gz -RUN tar xvzf docker-gen-linux-amd64-0.3.2.tar.gz +RUN tar -C /usr/local/bin -xvzf docker-gen-linux-amd64-0.3.2.tar.gz + +RUN mkdir /app +WORKDIR /app +ADD . /app EXPOSE 80 ENV DOCKER_HOST unix:///tmp/docker.sock diff --git a/Procfile b/Procfile index 191d01a..7a22293 100644 --- a/Procfile +++ b/Procfile @@ -1,2 +1,2 @@ nginx: nginx -dockergen: /app/docker-gen -watch -only-exposed -notify "nginx -s reload" /app/nginx.tmpl /etc/nginx/sites-enabled/default +dockergen: docker-gen -watch -only-exposed -notify "nginx -s reload" /app/nginx.tmpl /etc/nginx/sites-enabled/default