说明
数据卷 | 数据卷印射在容器内的路径 |
---|---|
nginx.conf | /etc/nginx |
nginx.html | /usr/share/nginx/html |
nginx.log | /var/log/nginx |
容器内的路径 | 说明 |
---|---|
/etc/nginx/nginx.conf | 配置文件 |
/etc/nginx/conf.d | 配置目录 |
/usr/share/nginx/html | 静态目录 |
/var/log/nginx | 日志目录 |
命令
# 直接用最新的就可以了, 没必要纠结选最后一个长期支持板(Stable)
docker pull nginx
# 创建一个名为 network 的网络
docker network create network
# 创建卷(默认的两个日志重定向到标准输出和标准错误了, 可通过 docker logs 看)
docker volume create nginx.html
docker volume create nginx.conf
docker volume create nginx.log
docker run -d --name nginx --network network -p 80:80 -e TZ=Asia/Shanghai -v nginx.conf:/etc/nginx -v nginx.html:/usr/share/nginx/html -v nginx.log:/var/log/nginx nginx
# 查看日志
docker logs nginx
# 跟踪日志
docker logs -f nginx
docker logs --follow nginx
# 查看最后10条日志
docker logs --tail 10 nginx
# 从最后10条日志起跟踪日志
docker logs -f --tail 10 nginx
# 查看最近10分钟的日志
docker logs --since 10m nginx
# 进入容器并执行 bash
docker exec -it nginx bash
# 退出容器
exit
# 测试配置
nginx -t
# 重载配置
nginx -s reload
# 进入容器并执行 nginx -t
docker exec -it nginx nginx -t
# 进入容器并执行 nginx -s reload
docker exec -it nginx nginx -s reload
注意, 默认情况下, nginx.conf 内部没有 server 配置, 而是在 conf.d 下的 default.conf 内