(五) Docker 安装 Nginx

参考并感谢

下载nginx镜像(不带tag标签则表示下载latest版本)

docker pull nginx

启动 nginxTmp 容器,目的是为了拷贝配置文件

docker run -d \
-p 80:80 \
--name nxtmp \
nginx:latest

登录到容器中

docker exec -it nxtmp bash

通过 CONTAINER ID或名称 拷贝nginx配置文件夹到宿主机

docker cp nxtmp:/etc/nginx/ /var/docker/configs/

通过 CONTAINER ID或名称 拷贝nginx日志文件夹到宿主机

docker cp nxtmp:/var/log/nginx/ /var/docker/logs/

通过 CONTAINER ID或名称 拷贝nginx资源文件夹到宿主机

docker cp nxtmp:/usr/share/nginx/html/ /var/docker/resources/nginx/

停止 nxtmp 容器

docker stop nxtmp

卸载删除 nxtmp 容器

docker rm nxtmp

带ssl证书启动nginx容器

docker run -d \
-p 80:80 \
-p 443:443 \
--name nx \
--mount type=bind,source=/var/docker/configs/nginx,target=/etc/nginx \
--mount type=bind,source=/var/docker/logs/nginx,target=/var/log/nginx \
--mount type=bind,source=/var/docker/resources/nginx,target=/usr/share/nginx/html \
--mount type=bind,source=/var/docker/configs/letsencrypt/,target=/etc/letsencrypt \
nginx:latest

或不带ssl证书启动nginx容器

docker run -d \
-p 80:80 \
-p 443:443 \
--name nx \
--mount type=bind,source=/var/docker/configs/nginx,target=/etc/nginx \
--mount type=bind,source=/var/docker/logs/nginx,target=/var/log/nginx \
--mount type=bind,source=/var/docker/resources/nginx,target=/usr/share/nginx/html \
nginx:latest

开放80和443端口并立即生效

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload

查看所有启动的容器,确保nginx正确启动

docker ps -a

PS:

  • 从临时文件拷贝之前,需要创建好对应的宿主机的文件目录,宿主机缺少文件会导致容器启动失败
  • 带ssl证书启动容器前,必须要有ssl证书

《(五) Docker 安装 Nginx》CSDN地址:https://blog.csdn.net/madmarszff/article/details/100902636

《(五) Docker 安装 Nginx》博客园地址:https://www.cnblogs.com/godzff/p/11528726.html

《(五) Docker 安装 Nginx》简书地址:

猜你喜欢

转载自www.cnblogs.com/godzff/p/11528726.html