1.目录结构
.
├── Dockerfile
├── nginx-1.18.0.tar.gz
├── nginx.conf
└── nginx.conf.bak
2.Dockerfile
[root@centos-linux nginx]
FROM centos:7
RUN yum install -y gcc gcc-c++ make openssl-devel pcre-devel
ADD nginx-1.18.0.tar.gz /tmp
RUN cd /tmp/nginx-1.18.0 && ./configure --prefix=/usr/local/nginx && make && make install
RUN rm -rf /tmp/nginx-1.18.0* && yum clean all
COPY nginx.conf /usr/local/nginx/conf
WORKDIR /usr/local/nginx
EXPOSE 80
CMD ["./sbin/nginx","-g","daemon off;"]
3.nginx.conf
[root@centos-linux nginx]
user root;
worker_processes auto;
error_log logs/error.log info;
pid logs/nginx.pid;
events {
use epoll;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log logs/access.log main;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
root html;
index index.html index.php;
location ~ \.php$ {
root html;
fastcgi_pass lnmp_php:9000;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
}
}
4.下载nginx软件包
wget https://nginx.org/download/nginx-1.18.0.tar.gz
5.构建镜像
docker build -t lnmp_nginx .