使用docker-compose部署Nginx

环境:

    CentOS Linux release 7.9.2009 (Core)

step1:创建一个nginx的工作目录

  暂定目录为 nginxpath

step2:创建一个默认的nginx容器

docker run --name nginx-demo -d nginx

step3:复制相关的配置文件

cd /nginxpath
docker cp nginx-demo:/etc/nginx/nginx.conf .
docker cp nginx-demo:/etc/nginx/conf.d/default.conf .
docker cp nginx-demo:/usr/share/nginx/html .

目录结构为:

nginxpath
├── conf.d
│   ├── default.conf
├── html
│   ├── 50x.html
│   └── index.html
└── nginx.conf

step4:编写docker-compose.yml文件

为了方便管理,我们新建一个文件夹conf用来存放nginx.conf文件

 1 version: "3.0"
 2 
 3 services:
 4   ngnix:                                          #服务名称,名称可自定义
 5     container_name: nginx-compose              #容器名称,可自定义
 6     image: nginx                                   # 镜像名称
 7     restart: always
 8     ports:                                     # 容器和服务器对应的端口映射,每次新增一个站点之后一定要在这里把对应的端口映射加上,不然肯定会404
 9       - 80:80
10       - 8080:8080
11       - 8081:8081
12       - 8082:8082
13     privileged: true
14     volumes:
15       - /home/install/softs/04.nginx/conf.d:/etc/nginx/conf.d
16       - /home/install/softs/04.nginx/conf/nginx.conf:/etc/nginx/nginx.conf
17       - /home/install/softs/04.nginx/logs:/var/log/nginx
18       - /home/install/softs/04.nginx/html:/usr/share/nginx/html
19       - /etc/letsencrypt:/etc/letsencrypt
20       - /etc/localtime:/etc/localtime

目录结构为:

nginxpath
├── conf.d #配置文件目录
│ ├── default.conf #默认的配置文件
├── html #静态文件资源
│ ├── 50x.html #错误页面
│ └── index.html #首页
├── conf #自定义配置文件目录
│ └── nginx.conf #自定义配置文件
└── docker-compose.yml #docker-compose配置文件

step5:运行docker-compose查看结果

docker-compose up -d

end:删除 nginx-demo镜像