前言
DockerCompose集群部署学习笔记
Compose是一个文本文件,用于存放自动化部署集群镜像的脚本代码
安装DockerCompose
MacOS
1
| brew install docker-compose
|
Linux
1 2 3 4 5
| curl -L https://github.io/docker/compose/release/download/1.29.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
curl -L https://raw/githubsercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
|
部署Mysql+Java项目
version: ""
:制定DockerCompose的版本,不同版本语法不同
services.mysql.volumes
:
/root/mysql/data
:指定宿主机映射的Mysql数据目录
/root/mysql/conf/hmy.cnf
:指定宿主机映射的Mysql配置文件
services.web.build
:指定Dockerfile所在目录
docker-compose.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| version: "3.2"
services: mysql: image: mysql:5.7.25 environment: MYSQL_ROOT_PASSWORD: 123456 volumes: - /root/mysql/data:/var/lib/mysql - /root/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf web: build: . ports: - 8080:8080
|
部署Mysql+Java项目集群
- DockerCompose内部得服务互相访问可以把服务名当作域名直接访问,而不需要ip地址
docker-compose.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| version: "3.2"
services: nacos: image: nacos/nacos-server environment: MODE: standalone port: - "8848:8848" mysql: image: mysql:5.7.25 environment: MYSQL_ROOT_PASSWORD: 123456 volumes: - /root/mysql/data:/var/lib/mysql - /root/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf user-service: build: ./user-service order-service: build: ./order-service gateway: build: ./gateway posts: - "8100"
|
查看帮助
创建并执行容器
-d
:后台运行
停止容器
只停止容器
停止并删除容器
重启容器
重启配置文件中的所有服务
重启配置文件中的指定服务
<service_name>
:服务名
1 2 3
| docker-compose restart <service_name>
docker-compose restart <service_name> <service_name>
|
查看容器日志
-f
:持续输出日志
查看配置文件中的所有服务的日志
查看配置文件中的指定服务的日志
1 2 3
| docker-compose logs <service_name>
docker-compose logs <service_name> <service_name>
|
完成
参考文献
哔哩哔哩——黑马程序员