您当前的位置:首页 > 计算机 > 服务器 > Nginx

在 docker 中运行 nginx

时间:12-14来源:作者:点击数:
CDSY,CDSY.XYZ

拉取 nginx 最新镜像

docker pull nginx:latest

如果需要指定版本,可以到 Docker Hub 镜像仓库 选择指定 Tag

docker pull nginx:1.21.3

查看是否拉取成功

docker images
docker-images

运行 nginx

一般需要代理转发,需要修改配置。直接修改容器的配置不是很方便,这时候,可以用上挂载功能,让容器加载或写入宿主机器上的挂载目录。

这样,我们直接在宿主机上就可以修改配置或查看日志了。

首先在宿主机上创建 3 个 nginx 的文件夹(笔者是使用 Windows 版的 Docker Desktop 进行测试的,故宿主机是 windows,如果是部署到 Linux 的话则使用 mkdir -p 进行创建):

html: 挂载静态页面目录

conf: 挂载 nginx 的主配置文件,以方便在宿主机上直接修改容器的配置文件

log: 挂载容器内 nginx 的日志,容器运行起来之后,可以直接在宿主机的这个目录中查看 nginx 日志

windows 宿主机创建文件夹

拷贝容器中默认的配置文件

# 先简单运行 nginx
docker run --name nginx -it -p 80:80 -d nginx

# 查看 nginx 运行的容器 ID
docker ps

# 找到 nginx 的容器 id 如笔者的是 02e4a2b4767a 拷贝 conf 到宿主机对应目录 
docker cp 容器 id:/etc/nginx/nginx.conf D:/Software/docker/env/nginx/conf/
docker cp 容器 id:/etc/nginx/conf.d D:/Software/docker/env/nginx/conf/
docker cp 容器 id:/usr/share/nginx/html D:/Software/docker/env/nginx/html/

# 拷贝完之后停止并删除容器
docker stop 容器 id
docker rm 容器 id

新版本的 docker desktop 设置中设置后支持直接 D:/ 如果不支持的则可以使用/d/ 代表 D:/

docker-ps

可以看到我们在本地的 conf 文件夹中多了一个 nginx.conf,这个就是 nginx 的核心配置文件了

当然如果本地已经有了配置文件,则可以不用拷贝容器中默认的配置文件,直接进入下一步

挂载后运行

# docker run --name my-nginx -p 80:80 --restart=always -v /d/Software/docker/env/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /d/Software/docker/env/nginx/log:/var/log/nginx -v /d/Software/docker/env/nginx/html:/usr/share/nginx/html -d nginx
docker run --name my-nginx -p 80:80 --restart=always -v D:/Software/docker/env/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v D:/Software/docker/env/nginx/log:/var/log/nginx -v D:/Software/docker/env/nginx/html:/usr/share/nginx/html -d nginx

–restart=always 一直保持运行,自动启动 -d 表示在一直在后台运行容器

打开浏览器输入 localhost 后看到如下页面,就说明 nginx 已经启动成功,后面就根据项目需要配置更改 nginx.conf 即可

welcome-to-nginx

常用命令

修改配置后,我们可以重启镜像,或者进入镜像中 ./nginx -s reload,即可让修改生效:

查看 nginx 运行的容器 ID

docker ps

进入容器

docker exec -it 容器 id /bin/bash

重新加载

docker exec -t 容器 id nginx -s reload

如果有需要则可以重启容器容器重启

docker exec -t 容器 id nginx -t
CDSY,CDSY.XYZ
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐