拉取镜像
docker pull nginx
创建映射目录
mkdir -p /data/server/nginx/{conf,log,html}
先创建一个nginx容器,然后将容器中的nginx.conf文件和conf.d文件夹复制到宿主机
- 创建容器
docker run -d --name nginx01 -p 20080:80 nginx
- 将容器中的nginx.conf文件复制到宿主机
docker cp nginx01:/etc/nginx/nginx.conf /data/server/nginx/conf/nginx.conf
- 将容器中的conf.d文件夹下内容复制到宿主机
docker cp nginx01:/etc/nginx/conf.d /data/server/nginx/conf/conf.d
- 将容器中的html文件夹复制到宿主机
docker cp nginx01:/usr/share/nginx/html /data/server/nginx
删除刚才创建的容器nginx01
docker rm -f nginx01
创建nginx容器
docker run \
-p 80:80 \
--name nginx \
-v /data/server/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /data/server/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /data/server/nginx/log:/var/log/nginx \
-v /data/server/nginx/html:/usr/share/nginx/html \
-d nginx
命令 | 描述 |
---|---|
–name nginx | 启动容器的名字 |
-d | 后台运行 |
-p 10080:80 | 将容器的 9002(后面那个) 端口映射到主机的 80(前面那个) 端口 |
-v /data/server/nginx/conf/nginx.conf:/etc/nginx/nginx.conf | 挂载nginx.conf配置文件 |
-v /data/server/nginx/conf/conf.d:/etc/nginx/conf.d | 挂载nginx配置文件 |
-v /data/server/nginx/log:/var/log/nginx | 挂载nginx日志文件 |
-v /data/server/nginx/html:/usr/share/nginx/html | 挂载nginx内容 |
nginx:latest | 本地运行的版本 |
\ | shell 命令换行 |
重新加载配置文件
docker exec -it nginx nginx -s reload