要在Docker容器中修改Nginx配置文件,有几种常用方法:
docker exec -it <容器名或ID> /bin/bash
/etc/nginx/
目录下):cd /etc/nginx/
ls -l
vi nginx.conf
# 或修改站点配置
vi conf.d/default.conf
docker exec <容器名或ID> nginx -s reload
mkdir -p ~/nginx/conf
mkdir -p ~/nginx/html
docker cp <容器名或ID>:/etc/nginx/nginx.conf ~/nginx/conf/
docker cp <容器名或ID>:/etc/nginx/conf.d/ ~/nginx/conf/
docker run -d --name mynginx \
-p 80:80 \
-v ~/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v ~/nginx/conf/conf.d/:/etc/nginx/conf.d/ \
-v ~/nginx/html:/usr/share/nginx/html \
nginx
docker exec mynginx nginx -s reload
FROM nginx:latest
COPY custom.conf /etc/nginx/conf.d/
COPY html/ /usr/share/nginx/html/
docker build -t my-nginx .
docker run -d --name mynginx -p 80:80 my-nginx
docker exec <容器名> nginx -t
如果修改了监听端口,需要更新容器的端口映射(-p参数)
对于生产环境,推荐使用方法二(挂载配置文件),这样修改更方便且易于维护
如果使用Docker Compose,可以在docker-compose.yml中配置volumes挂载