使用docker-compose如何做nginx服务
前言
Docker Compose 可以轻松、高效的管理容器,它是一个用于定义和运行多容器 Docker 的应用程序工具.
除了docker Compose还有一个技术k8s也能实现快速的部署。
可以一键启动,一键停止,非常方便
一.上传nginx配置文件
cd /home 存放软件或者配置文件的位置
mkdir nginx 建立个文件夹专门放nginx的文件

cd nginx 进入文件夹上传配置文件
我用的连接工具可以直接移进去,你们可以用rz上传,如果rz报错的话,可以去网上搜索下载一下rz的命令

二.docker-compose安装与配置
1.上传文件
安装包刚下载过来是docker-compose-Linux-x86_64
需要将docker-compose-Linux-x86_64重命名为docker-compose
将docker-compose文件上传到虚拟机的/usr/local/bin/目录下
cd /usr/local/bin

2.添加可执行权限
chmod +x /usr/local/bin/docker-compose
3.创建并编辑yml文件
touch docker-compose.yml

vi docker-compose.yml 进入文件把以下内容复制进去:
version: '3'
services:
nginx01:
container_name: nginx01
image: nginx
ports:
- 9998:80
volumes:
- /home/nginx/html:/etc/nginx/html
- /home/nginx/conf.d:/etc/nginx/conf.d
- /home/nginx/log:/var/log/nginx
restart: always
nginx02:
container_name: nginx02
image: nginx
ports:
- 9999:80
volumes:
- /home/nginx/html:/etc/nginx/html
- /home/nginx/conf.d:/etc/nginx/conf.d
- /home/nginx/log:/var/log/nginx
restart: always4.nginx前置操作
记得关闭防火墙或者开放端口
firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --reload firewall-cmd --query-port=80/tcp
5.启动docker-compose
docker-compose up -d
加了 -d 就是后台运行

启动两台服务
6.访问nginx
- 9998端口

- 9999端口

除此之外我们还可以添加自定义网络
6.添加自定义网络
networks:
net01:
driver: bridge
ipam:
config:
- subnet: 192.168.101.0/24
gateway: 192.168.101.1
net02:
driver: bridge
ipam:
config:
- subnet: 192.168.102.0/24
gateway: 192.168.102.1添加之后,docker-compose.yml文件内容如下:
version: '3'
services:
nginx01:
container_name: nginx01
image: nginx
ports:
- 9998:80
volumes:
- /home/nginx/html:/etc/nginx/html
- /home/nginx/conf.d:/etc/nginx/conf.d
- /home/nginx/log:/var/log/nginx
restart: always
networks:
- net01
nginx02:
container_name: nginx02
image: nginx
ports:
- 9999:80
volumes:
- /home/nginx/html:/etc/nginx/html
- /home/nginx/conf.d:/etc/nginx/conf.d
- /home/nginx/log:/var/log/nginx
restart: always
networks:
- net01
- net02
networks:
net01:
driver: bridge
ipam:
config:
- subnet: 192.168.101.0/24
gateway: 192.168.101.1
net02:
driver: bridge
ipam:
config:
- subnet: 192.168.102.0/24
gateway: 192.168.102.1可以同时指定一个容器使用多个网络
networks:
- net01
- net02修改完yml文件之后还可以输入 docker-compose config -q 做一下文件的校验, 执行之后没有报错就说明yml文件时,没有问题的!
![]()
7.删除服务并重新执行
执行docker-compose down 删除之前开启的服务

执行docker-compose up -d启动

启动之后还可以执行 docker network ls 查看网络,docker-compose帮你自动创建了两个自定义网络

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Docker容器处于Removal in process无法删除问题及解决
这篇文章主要介绍了Docker容器处于Removal in process无法删除问题及解决方案,具有很好的参考价值,希望对大家有所帮助。2023-07-07
docker安装Jenkins配置Gitee SSH密钥踩坑解决
这篇文章主要为大家介绍了docker安装Jenkins配置Gitee SSH密钥踩坑解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-08-08


最新评论