1、简述
Docker Compose 是 Docker 官方提供的一个工具,用于定义和管理多容器应用。它通过一个简单的 YAML 文件来定义应用的服务、网络、卷等配置,并提供了一组命令来启动、停止、构建和管理应用。使用 Docker Compose 可以让开发人员轻松地在本地开发环境中部署和管理多容器应用,提高开发效率和部署一致性。
2、安装
下载最新版本的 Docker Compose。你可以从 Docker GitHub release page 找到最新版本的下载链接。
sudo curl -L "https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
给可执行权限给下载的二进制文件:
sudo chmod +x /usr/local/bin/docker-compose
创建软链接以便于从任何位置调用 docker-compose 命令:
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
验证安装是否成功:
[root@localhost bin]# docker-compose --version
Docker Compose version v2.25.0
3、编写
接下来,创建一个名为 docker-compose.yml 的文件,并在其中定义应用的服务、网络、卷等配置。下面是一个简单的示例:
version: '3'
services:jumpserver:image: jumpserver/jms_all:latestports:- "8080:8080"- "2222:2222"depends_on:- mariadbenvironment:- BOOTSTRAP_TOKEN=your_bootstrap_token- DB_HOST=mariadb- DB_PORT=3306- DB_USER=jumpserver- DB_PASSWORD=your_db_password- DB_NAME=jumpservervolumes:- /opt/jumpserver/data:/opt/jumpserver/datamariadb:image: mariadb:10.3environment:- MYSQL_ROOT_PASSWORD=your_mysql_root_password- MYSQL_DATABASE=jumpserver- MYSQL_USER=jumpserver- MYSQL_PASSWORD=your_mysql_passwordvolumes:- /opt/mysql:/var/lib/mysql
在 Docker Compose 文件中,可以使用一些脚本参数来定制容器的配置和行为。下面是一些常用的脚本参数及其含义:
- image:指定容器所使用的镜像名称。
- build:指定构建 Docker 镜像所使用的 Dockerfile 路径或 URL。
- ports:定义容器的端口映射关系,格式为 主机端口:容器端口。
- environment:设置容器的环境变量。
- volumes:定义容器的卷映射关系,格式为 主机路径:容器路径。
- depends_on:指定容器依赖关系,用于控制容器启动顺序。
- restart:定义容器退出后的重启策略,可以是 no、always、on-failure 等
4、常用指令
在使用 Docker Compose 进行应用管理时,有一些常用的指令可以帮助你更方便地进行操作。以下是一些常用的 Docker Compose 指令:
- docker-compose up -d:启动应用并在后台运行。
- docker-compose down:停止并移除所有容器、网络和卷。
- docker-compose ps:列出当前应用的所有容器。
- docker-compose logs:查看应用的日志输出。
- docker-compose exec <service_name> :在指定服务中执行命令。
5、结论
通过本文的介绍,你已经了解了如何使用 Docker Compose 来快速部署和管理容器化应用,并详细了解了 Docker Compose 文件中的脚本参数,并列出了常用的 Docker Compose 指令。使用 Docker Compose 可以让你更加方便地在本地部署和管理多容器应用,提高开发效率和部署一致性。
希望本文对你有所帮助,祝你在使用 Docker Compose 时能够顺利运行!