Docker-compose 编排容器
Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。
安装docker & docker-compose
https://blog.csdn.net/GBK_8/article/details/127444461?spm=1001.2014.3001.5502
编写yml文件
version: '3'
services:
mysql:
image: mysql:5.7
#ports:
#- 3306:3306
#- 23306:33060
network_mode: "host"
container_name: mysql
volumes:
- ./mysql/data:/var/lib/mysql
- /etc/localtime:/etc/localtime
- ./mysql/conf:/etc/mysql/conf.d
environment:
MYSQL_ROOT_PASSWORD: ******
restart: always
nacos:
image: nacos/nacos-server:1.4.2
container_name: nacos
restart: always
privileged: true
depends_on:
- mysql
environment:
# 单节点模式
MODE: standalone
#集群中其它节点[ip1:port ip2:port ip3:port]
#NACOS_SERVERS: 10.10.9.155:8848 10.10.9.156:8848 10.10.9.157:8848
volumes:
- ./nacos/logs/:/home/nacos/logs/
- ./nacos/plugins/:/home/nacos/plugins/
- ./nacos/application.properties:/home/nacos/conf/application.properties
#ports:
#- "3848:3848"
network_mode: "host"
redis:
image: redis:6.0.9
#ports:
#- 10170:6379
network_mode: "host"
container_name: redis
volumes:
- ./redis/data:/data
#redis config file
- ./redis/config/redis.conf:/etc/redis/redis.conf
environment:
TZ: Asia/Shanghai
restart: always
#sysctls:
# net.core.somaxconn: 1024
command:
redis-server --requirepass ******
参数说明:
images – 容器启动时依赖的镜像,如果本地没有会自动联网下载。
ports – 端口映射,将容器内的端口映射到外部主机网络端口上。
network_mode – 网络模式,”host” 采用主机网络。不可与ports一同配置。
container_name – 容器名称。
volumes – 文件映射,将容器内的文件映射到主机中(该操作是相互的)。
environment – 参数,附加参数容器启动后会读取该参数进行启动。
restart – 容器重启方式,永远
command – 执行命令 容器启动时最后会以该命令执行。
使用
- docker-compose up –d 启动
- docker-compose stop 停止
- dokcer-compose down 停止并删除容器