Docker安装Nginx

第一步:拉取镜像

可指定版本,也可不写,则为默认最新版本,本文使用1.27.1版本

docker pull nginx:1.27.1

第二步:拷贝配置文件

首先运行容器

docker run -d --name nginx -p 8082:8082 nginx:1.27.1

然后复制配置文件到宿主机文件夹,此处的宿主文件夹为自己手动创建,即为 D:/usr/nginx/conf

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

以下为我的输出结果:

第三步 :停止并删除创建的Nginx容器

#停止容器
docker stop nginx
#删除容器 docker rm nginx

第四步 : 再次运行Nginx

复制代码
docker run \
-p 80:80 \
--restart always \
--name nginx \
-v D:/usr/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v D:/usr/nginx/conf/conf.d:/etc/nginx/conf.d \
-v D:/usr/nginx/log:/var/log/nginx \
-v D:/usr/nginx/html:/usr/share/nginx/html \
-d nginx:1.27.1
复制代码

-p: 指定宿主机的9091端口映射到容器内部的80端口,不要随便映射,因为80端口是nginx默认使用的端口

--restart :容器重启策略

--name: 给容器起名称

-d: 后台运行

-v: 挂载配置文件、html 目录到宿主机;冒号前为宿主机文件路径,冒号后为挂载到容器中的路径。可以看到宿主机被挂载的三个目录/文件是第一次运行时从容器内拷贝出来的

第五步: 测试

可查看日志: 看到start up 即安装成功

 直接浏览器访问宿主机映射的 80 端口:显示如下界面即安装成功

 

PS: 安装过程中遇到的问题

启动容器时,指定宿主机端口映射到nginx容器内部的端口号时,一定要是80,不能随便映射, 因为80端口是nginx默认使用的端口,可以在Docker可视化界面看到

如若配置失败,则会显示以下信息   80/tcp     not bound , 将启动容器的端口映射改为nginx默认使用的80端口即可

posted @   Lemon1103  阅读(117)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示