Docker部署Nginx
搜索镜像
sudo docker search nginx
选择第一个
拉取镜像
sudo docker pull nginx
查看拉取的镜像
sudo docker images
运行镜像
sudo docker run -d --name nginx -p 80:80 -p 443:443 nginx
运行成功看到会输入镜像id
查看镜像运行情况
sudo docker ps -a
访问浏览器
带上服务器ip地址+端口号port即可。例如:http://1.12.223:80/ (替换成自己的服务器公网ip+端口号)
访问成功代表部署成功。
部署其他项目到nginx
在上面的基础上。我们需要将docker容器中nginx的配置文件拷贝到主机目录。为文件映射做准备,直接映射会发生错误。
主要是html目录、configml、log目录。
拷贝方式如下
以我当前运行的为例:
首先我们需要当前运行的nginx的镜像id。
- 拷贝conf
sudo docker cp 605c77e624dd:/etc/nginx/conf.d/default.conf /home/nginx/conf
- 拷贝html
sudo docker cp 605c77e624dd:/usr/share/nginx/html /home/nginx/html/
- 拷贝logs
sudo docker cp 605c77e624dd:/var/log/nginx/ /home/nginx/logs/
拷贝完成之后目录结构如下
停止正在运行的nginx容器并删除
- 停止
sudo docker stop 605c77e624dd
- 删除
sudo docker rm 605c77e624dd
重新启动容器并映射相应的目录文件
sudo docker run -d --name nginx -p 80:80 -p 443:443 -v /home/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/logs:/var/log/nginx -v /home/nginx/html:/usr/share/nginx/html -v /home/nginx/conf:/etc/nginx/conf.d --privileged=true -e TZ=Asia/Shanghai nginx
查看容器运行情况
sudo docker ps -a
输入ip+port可以看到欢迎页面说明映射成功。