浏览代码

Initial commit

Jason Wilder 11 年之前
父节点
当前提交
3d25e3da57
共有 3 个文件被更改,包括 59 次插入0 次删除
  1. 26 0
      Dockerfile
  2. 22 0
      nginx.tmpl
  3. 11 0
      supervisor.conf

+ 26 - 0
Dockerfile

@@ -0,0 +1,26 @@
+FROM ubuntu:12.04
+MAINTAINER Jason Wilder jwilder@litl.com
+
+# Install Nginx.
+RUN apt-get update
+RUN apt-get install -y python-software-properties wget supervisor
+RUN add-apt-repository -y ppa:nginx/stable
+
+RUN apt-get update
+RUN apt-get install -y nginx 
+RUN echo "daemon off;" >> /etc/nginx/nginx.conf
+
+RUN mkdir /app
+WORKDIR /app
+ADD . /app
+
+RUN wget https://github.com/jwilder/docker-gen/releases/download/0.1.2/docker-gen-linux-amd64-0.1.2.tar.gz
+RUN tar xvzf docker-gen-linux-amd64-0.1.2.tar.gz
+
+RUN mkdir -p /var/log/supervisor
+ADD supervisor.conf /etc/supervisor/conf.d/supervisor.conf
+
+EXPOSE 80
+ENV DOCKER_HOST unix:///tmp/docker.sock
+
+CMD ["/usr/bin/supervisord"]

+ 22 - 0
nginx.tmpl

@@ -0,0 +1,22 @@
+{{ range $host, $containers := groupBy $ "Env.VIRTUAL_HOST" }}
+upstream {{ $host }} {
+
+{{ range $index, $value := $containers }}
+	{{ with $address := index $value.Addresses 0 }}
+	server {{ $value.Gateway }}:{{ $address.HostPort }};
+	{{ end }}
+{{ end }}
+
+}
+
+server {
+	gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
+
+	server_name {{ $host }};
+
+	location / {
+	    proxy_pass http://{{ $host }};
+	    include /etc/nginx/proxy_params;
+	}
+}
+{{ end }}

+ 11 - 0
supervisor.conf

@@ -0,0 +1,11 @@
+[supervisord]
+nodaemon=true
+
+[program:nginx]
+command=nginx
+directory=/etc/nginx
+
+[program:docker-gen]
+command=./docker-gen -watch -notify "nginx -s reload" /app/nginx.tmpl /etc/nginx/sites-enabled/default
+directory=/app
+