Docker Compose 安装与卸载
- 简单来说,Docker Compose就是Docker 官方为了更便捷管理Docker而提供的一个工具,可以想象,一旦需要部署的Docker容器数量比较都的时候,管理起来是比较困难的。
Docker Compose安装
// 下载,安装
curl -L https://github.com/docker/compose/releases/download/v2.21.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
网不行的换个地址
curl -L https://get.daocloud.io/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
// 添加可执行权限
chmod +x /usr/local/bin/docker-compose
Docker Compose 卸载
rm /usr/local/bin/docker-compose
Docker Compose 使用
- Docker讲究的一个容器一个服务,一个完整的应用势必会涉及多个容器服务;所以Docker Compose面向的是应用这个维度,可以简单理解为 Docker Compose 通过管理多个容器服务从而构建一个完成的应用。
- Docker Compose中开发者最关心的应该就是配置文件了,与Dockerfile一样,这个配置文件有默认的名称 docker-compose.yml ,以下是一个原生tomcat 的Docker Compose 版本的配置
version: "3"
services:
tomcat:
image: tomcat
ports:
- 8080:8080
restart: always
container_name: tomcat
启动这个应用:进入Docker Compose 配置文件所在目录(也可以使用 -f 自己指定配置文件所在目录),使用以下命令启动
docker-compose up
- 附mysql Docker Compose 配置
version: '3.1'
services:
db:
image: mysql
restart: always
environment:
// 等同于 docker run -e 那玩意
MYSQL_ROOT_PASSWORD: root
TZ: Asia/Shanghai
command:
--default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
ports:
- 3306:3306
volumes:
- ./data:/var/lib/mysql
- mydata:/var/xxxx
// 下面这东西可要可不要,默认提供的一个web 控制台
adminer:
image: adminer
restart: always
ports:
- 8080:8080
// 这里可以统一配置数据卷
volumes:
- mydata: /xxxx/xxxx
常用命令
// 基于镜像启动新容器
// 启动应用
docker-compose up
// 后台启动
docker-compose up -d
// 启动已停止的应用
docker-compose start
// 重启应用
docker-compose restart
//停止应用
docker-compose stop
// 停止并移除容器
docker-compose down
// tips 指定自定义配置文件
docker-compose -f xxx.yml/xxx.yaml up/start /restart......