docker部署nginx

 在docker上运行nignx镜像,并将配置文件和目录挂载到宿主机上,以实现方便统一的管理配置信息。

1,拉取镜像

docker pull nginx

 

image

 查看镜像是否拉取成功

docker images

 

image

2,创建文件和文件夹用于运行的时候挂载

mkdir -p /mydata/nginx/conf
mkdir -p /mydata/nginx/logs
mkdir -p /mydata/nginx/html

  

image

3,拷贝配置文件

先运行nginx容器,把容器内的配置文件拷贝出来,再将容器删除。避免手动创建配置文件导致的语法错误,如果已有正确的配置文件直接使用即可,可以跳过此步骤。

# 1. 先用 nginx 镜像创建 nginx 容器,将需要挂载的文件拷贝出来
docker run --name nginx -d -p 80:80 nginx:latest

# 2. 将容器中的 nginx.conf 文件拷贝到宿主机中
docker cp nginx:/etc/nginx/nginx.conf /mydata/nginx/conf/nginx.conf

# 3. 将容器中 conf.d 文件夹(包括里面的文件)拷贝到宿主机中
docker cp nginx:/etc/nginx/conf.d /mydata/nginx/conf/conf.d

# 4. 将容器中的 html 文件夹拷贝到宿主机中
 docker cp nginx:/usr/share/nginx/html /mydata/nginx/

# 5.停止正在运行的容器
docker stop nginx

# 6.删除nginx容器
docker rm nginx

4,启动nginx容器并挂载目录

docker run -p 80:80 --name nginx \
-v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /mydata/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-d \
--restart=always \
nginx:latest

 

命令释义:

1. --name是设置容器名

2. -p是容器与宿主机的端口映射

3. -v是做卷挂载,实质上就是文件的映射

4. -d是后台运行

5.--restart 是Docker提供重启策略控制容器退出时或Docker重启时是否自动启动该容器。always表示docker重启后,这个容器会自动重启

5,验证

docker ps

  

image

 

浏览器访问

image

 

posted @ 2026-03-10 09:08  无虑的小猪  阅读(7)  评论(0)    收藏  举报