利用數據卷容器,設置Nginx Docker作為靜態文件處事器 .
該要領是直接利用呼吁行,雖然也可利用Dockerfile文件舉辦建設。 其實,利用docker建設nginx容器是很簡樸的,但要和數據卷容器團結起來利用,即所有靜態文件放在數據卷容器中,東莞機房托管
,然后可以啟動多個nginx來會見同一個數據卷容器(假如需要啟動多個數據卷容器,大概會呈現一個小問題,請拜見我在Dockerone上接頭的這個問題:
http://dockerone.com/question/214notification_id=4141&rf=false&item_id=623&answer_id=623&single=TRUE#!answer_623)
1.首先要將 nginx 給pull下來
sudo docker pull nginx
2.將 debian:wheezy 給pull下來
執行該步的原因是因為思量到后頭實現數據卷容器共享時的相通性。
sudo dcoker pull debian:wheezy
3.啟動一個數據卷容器
sudo docker run --name data-volume-container -v /www:/usr/share/nginx/html:ro -d debian:wheezy
* 個中/usr/share/nginx/html是nginx的默認文件目次
* 以debian:wheezy來啟動是為了擔保和nginx的目次布局溝通(詳細可查察nginx的Dockerfile文件),雖然,利用Ubuntu也可以,其具有溝通的目次布局
4.然后啟動nginx,留意各個參數
docker run --volumes-from data-volume-container --name nginx-server -p 80:80 -d nginx
注:
* 會見主機的默認端口即可會見到nginx
最后,只需要在欣賞器中輸入http://localhost可能http://host-ip就可舉辦會見
附:nginx 的 Dockerfile:
FROM debian:wheezy
MAINTAINER NGINX Docker Maintainers "[email protected]"
RUN apt-key adv --keyserver pgp.mit.edu --recv-keys 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62
RUN echo "deb http://nginx.org/packages/mainline/debian/ wheezy nginx" >> /etc/apt/sources.list
ENV NGINX_VERSION 1.7.11-1~wheezy
RUN apt-get update &&
apt-get install -y ca-certificates nginx=${NGINX_VERSION} &&
rm -rf /var/lib/apt/lists/*
# forward request and error logs to docker log collector
RUN ln -sf /dev/stdout /var/log/nginx/access.log
RUN ln -sf /dev/stderr /var/log/nginx/error.log
VOLUME ["/var/cache/nginx"]
EXPOSE 80 443
CMD ["nginx", "-g", "daemon off;"]