素材巴巴 > 程序开发 >

docker中安装Nginx

程序开发 2023-09-06 18:30:33

拉取最新版的 Nginx 镜像

docker pull nginx:latest
 

启动一个Nginx服务

docker run --name nginx -p 80:80 -d nginx
 

–name my-nginx 指定容器的名称
-p 80:80 映射端口
-d 守护进程运行
nginx 镜像版本,也可以指定版本,如:nginx:1.18.0

创建Nginx配置文件

启动前需要先创建Nginx外部挂载的配置文件( /home/nginx/conf/nginx.conf)
之所以要先创建 , 是因为Nginx本身容器只存在/etc/nginx 目录 , 本身就不创建 nginx.conf 文件
当服务器和容器都不存在 nginx.conf 文件时, 执行启动命令的时候 docker会将nginx.conf 作为目录创建 , 这并不是我们想要的结果 。

# 创建挂载目录
 mkdir -p /root/nginx/conf
 mkdir -p /root/nginx/log
 mkdir -p /root/nginx/html
 

容器中的nginx.conf文件和conf.d文件夹复制到宿主机

# 将容器nginx.conf文件复制到宿主机
 docker cp nginx:/etc/nginx/nginx.conf /root/nginx/conf/nginx.conf
 # 将容器conf.d文件夹下内容复制到宿主机
 docker cp nginx:/etc/nginx/conf.d /root/nginx/conf/conf.d
 # 将容器中的html文件夹复制到宿主机
 docker cp nginx:/usr/share/nginx/html /root/nginx
 

img

重新创建Nginx容器并挂载

# 关闭该容器
 docker stop nginx
 # 删除该容器
 docker rm nginx
 
docker run 
 -p 80:80 
 --name nginx 
 -v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.conf 
 -v /root/nginx/conf/conf.d:/etc/nginx/conf.d 
 -v /root/nginx/log:/var/log/nginx 
 -v /root/nginx/html:/usr/share/nginx/html 
 -d nginx:latest
 
命令描述–namenginx-d后台运行-p 9002:80将容器的 9002(后面那个) 端口映射到主机的 80(前面那个) 端口-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf挂载nginx.conf配置文件-v /home/nginx/conf/conf.d:/etc/nginx/conf.d挂载nginx配置文件-v /home/nginx/log:/var/log/nginx挂载nginx日志文件-v /home/nginx/html:/usr/share/nginx/html挂载nginx内容nginx:latest本地运行的版本shell 命令换行

img


参考:

Docker 安装 Nginx 容器 (完整详细版)_Touch&的博客-CSDN博客_nginx容器安装


标签:

素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。