如何在docker中查找nginx服务的安装路径

有时候想重启nginx或者修改nginx配置,但是不知道被安装到了哪里

安装nginx

docker pull nginx

查看本地nginx的镜像Id

docker images nginx

创建nginx镜像

docker run -d --name mynginx -p 80:80 nginx

查看nginx是否正常在容器中运行

docker ps

修改nginx配置文件

docker exec -it mynginx /bin/bash

  • mynginx nginx镜像别名
1
2
3
# cd /etc/nginx // 进入nginx配置文件
# cd /usr/share/html // 默认访问文件
# cd /var/log/nginx // 日志文件

将容器内部配置文件挂载到主机

在主机上创建挂载目录

mkdir -p /home/nginx{config,log,html}

将容器内的文件拷贝到主机下

1
2
3
4
5
6
7
8
// 将容器nginx.conf文件复制到宿主机
# docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf

// 将容器conf.d文件复制到宿主机
# docker cp nginx:/etc/nginx/conf.d /home/nginx/conf/conf.d

// 将容器中的html文件夹复制到宿主机
# docker cp nginx:/usr/share/html /home/nginx/

停止nginx容器

docker stop nginx

重新创建nginx容器

1
# docker run -d --name nginx -p 80:80 -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/conf/conf.d:/etc/nginx/conf.d -v /home/nginx/log:/var/log/nginx -v /home/nginx/html:/usr/share/nginx/html --privileged=true nginx

参考文档:
阿里云docker安装nginx