dockerfile-nginx
1.Dockerfile
mkdir nginx
cd nginx/
vi Dockerfile
将压缩包上传至此目录
基于centos:7
FROM centos:7
MAINTAINER Chinaskill
下载手工编译nginx软件包
RUN yum update -y && yum install -y gcc gcc-c++ pcre-devel zlib-devel make
添加用户
RUN useradd -M -s /sbin/nologin nginx
将Nginx压缩包添加到容器中
ADD nginx-1.12.2.tar.gz /root
设置工作目录
WORKDIR /root/nginx-1.12.2
修改nginx配置文件内容
ADD nginx.txt /root/nginx-1.12.2
RUN sed -i "46 r nginx.txt" /root/nginx-1.12.2/conf/nginx.conf
拷贝文件index可以换成dest目录
COPY ./index.html html/
编译安装nginx
RUN ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
RUN make && make install
建立启动软链接
RUN ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
暴露端口
EXPOSE 80
关闭容器守护进程
RUN echo "daemon off;" >> /usr/local/nginx/conf/nginx.conf
2.nginx修改文件内容
location /user {
proxy_pass http://127.0.0.1:8082;
}
location /shopping {
proxy_pass http://127.0.0.1:8081;
}
location /cashier {
proxy_pass http://127.0.0.1:8083;
}
3.创建容器并测试
创建容器
docker build -t Chinaskillmall-nginx:v1.1 .
启动容器
docker run -d -P Chinaskillmall-nginx:v1.1 /usr/local/sbin/nginx
• 测试:
docker port 2f01bb4bd337
80/tcp -> 0.0.0.0:32772

浙公网安备 33010602011771号