[root@VM_0_17_centos docker]# ls
Dockerfile nginx-1.12.2.tar.gz nginx.conf vhosts.conf
wget http://nginx.org/download/nginx-1.12.2.tar.gz
worker_processes 1;
error_log logs/error.log;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
include vhosts.conf;
}
server {
listen 80;
server_name localhost;
root /usr/local/www/html;
access_log logs/host.access.log;
location / {
autoindex on;
}
location ~ \.php$ {
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
FROM hub.c.163.com/netease_comb/centos:7
RUN yum install -y epel-release && yum update -y && yum install -y gcc pcre pcre-devel zlib zlib-deve make
ADD nginx-1.12.2.tar.gz /tmp/
WORKDIR /tmp/nginx-1.12.2
RUN ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-pcre --without-http_gzip_module && make && make install
RUN ln -s /usr/local/nginx/sbin/nginx /usr/bin/
COPY nginx.conf /usr/local/nginx/conf
COPY vhosts.conf /usr/local/nginx/conf
EXPOSE 80 443
CMD ["nginx", "-g", "daemon off;"]
[root@VM_0_17_centos docker]# docker build -t nginx:1.12.2 .
[root@VM_0_17_centos docker]# mkdir -p /usr/local/www/html
[root@VM_0_17_centos docker]# mkdir -p /usr/local/www/nginx/conf
[root@VM_0_17_centos docker]# cd /usr/local/www/nginx/conf/
[root@VM_0_17_centos conf]# vim vhosts.conf
server {
listen 80;
server_name localhost;
root /usr/local/www/html;
access_log logs/host.access.log;
location / {
autoindex on;
}
location ~ \.php$ {
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
[root@VM_0_17_centos docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx 1.12.2 a36ee448c47f 10 minutes ago 571 MB
hub.c.163.com/netease_comb/centos 7 3d7d945d55b7 2 years ago 198 MB
[root@VM_0_17_centos docker]# docker run -d -p 80:80 -v /usr/local/www/html:/usr/local/www/html -v /usr/local/www/nginx/conf/vhosts.conf:/usr/local/nginx/conf/vhost.conf a36ee448c47f
c71e8c6071f794425a289b95c9cf6247f3c64071c5be6b50c61a642791585f22