前言
之前是将 Nginx 的配置文件、静态资源等复制到容器中,这样导致一个问题:修改静态资源或查看日志时还要进入容器中操作,比较麻烦,所以改为挂载方式启动 Nginx。
1、提前查看的容器内文件和文件夹:
/usr/share/nginx/html/
/etc/nginx/conf.d/
/etc/nginx/nginx.conf
/var/log/nginx/
2、在宿主机创建挂载目录
mkdir -p /usr/local/docker/nginx/conf/
mkdir -p /usr/local/docker/nginx/log/
3、从容器中复制nginx配置文件到宿主机挂载目录
# 生成容器
docker run --name nginx -p 8989:80 -d nginx:latest
# 将容器nginx.conf文件复制到宿主机
docker cp nginx:/etc/nginx/nginx.conf /usr/local/docker/nginx/conf/nginx.conf
# 将容器conf.d文件夹下内容复制到宿主机
docker cp nginx:/etc/nginx/conf.d /usr/local/docker/nginx/conf/conf.d
# 将容器html文件夹下内容复制到宿主机
docker cp nginx:/usr/share/nginx/html /usr/local/docker/nginx
4、删除原容器
docker stop nginx
docker rm nginx
5、改为挂载方式启动
docker run -p 8989:80 --name nginx -v /usr/local/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /usr/local/docker/nginx/conf/conf.d:/etc/nginx/conf.d -v /usr/local/docker/nginx/log:/var/log/nginx -v /usr/local/docker/nginx/html:/usr/share/nginx/html -d nginx:latest
6、快捷修改html静态资源
# 直接在宿主机/usr/local/docker/nginx/html文件夹中修改即可
cd /usr/local/docker/nginx/html