一、安装docker
二、拉取nginx镜像
- #不加版本号,默认拉取最新的
- docker pull nginx
- #加版本号,就拉取对应的版本(tag)
- docker pull nginx:1.23.1
- #具体的可以到docker镜像仓库去查看 https://hub.docker.com/
三、启动nginx容器
docker run -d --name nginx -p 80:80 nginx
访问http://ip:80 (如果是80端口可以不用加)
四、复制配置文件到宿主机
1.创建三个目录
mkdir -p /opt/nginx/{conf,logs,html}
2.将nginx容器中的配置文件复制到宿主机中。
- # 将容器nginx.conf文件复制到宿主机
- docker cp nginx:/etc/nginx/nginx.conf /opt/nginx/conf/nginx.conf
- # 将容器conf.d文件夹下内容复制到宿主机
- docker cp nginx:/etc/nginx/conf.d /opt/nginx/conf/conf.d
- # 将容器中的html文件夹复制到宿主机
- docker cp nginx:/usr/share/nginx/html /opt/nginx/
3.停止并移除刚才启动的nginx容器
- #停止nginx容器
- docker stop nginx
- #移除nginx容器
- docker rm nginx
五、以挂载配置文件的方式重新启动nginx
docker run -p 80:80 --name nginx -v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /opt/nginx/conf/conf.d:/etc/nginx/conf.d -v /opt/nginx/logs:/var/log/nginx -v /opt/nginx/html:/usr/share/nginx/html -d nginx
- docker run -p 80:80 \
- --name nginx \
- -v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
- -v /opt/nginx/conf/conf.d:/etc/nginx/conf.d \
- -v /opt/nginx/logs:/var/log/nginx \
- -v /opt/nginx/html:/usr/share/nginx/html \
- -d nginx
六、验证修改宿主机中的配置是否生效
1. 修改/opt/nginx/html/index.html文件
2. 访问http://ip:80,可以看到马上就生效了,并不需要重启nginx服务