拉取镜像
docker pull nginx
docker images nginx 查看显示镜像
先随便创建一个容器,然后进入容器观察目录结构
docker run -p 80:80 --name mynginx
-
d nginx 创建mynginx
docker exec -it
mynginx
/bin/bash
发现主配置为 /etc/nginx/nginx.conf
它的错误文件放在了var/log/nginx目录下
pid文件放在了 /var/run/nginx.pid,但是该文件没必要目录同步,需要的时候进去查看就好。
它的http模块里包含了 include /etc/nginx/conf.d/*.conf;
我们将要把项目放在容器的 /www 下
现在本地创建一个service目录,来存放映射目录
然后在service目录下创建如下文件夹结构
service
----etc
--------nginx
----var
----
----log
----www
把配置文件从docker里复制出来
cd serivce
docker cp mynginx:/etc/nginx/nginx.conf etc/nginx/
docker cp mynginx:/etc/nginx/conf.d etc/nginx/
现在我们需要映射的文件或文件夹如下,还是直接看命令吧
docker run -p 80:80 --name mynginx -v $PWD/www:/www -v $PWD/etc/nginx/nginx.conf:/etc/nginx/nginx.conf -v $PWD/var/log/nginx:/var/log/nginx -v$PWD/etc/nginx/conf.d:/etc/nginx/conf.d --privileged=true -d nginx
要加上--privileged=true 避免出现权限问题
现在只需要在etc/nginx/conf.d 里修改项目根目录为 /www ,然后在www下存放项目(静态页),重启nginx,即大功告成。