Docker Compose 是一个工具,用于定义和运行多容器 Docker 应用程序。它通过 YAML 文件来配置应用程序的服务、网络和卷,简化了多容器环境的管理。
安装 Docker(如果尚未安装)
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce
最新版安装
下载 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep 'tag_name' | awk '{print substr(\$2, 2, length(\$2)-3)}')/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
赋予执行权限
sudo chmod +x /usr/local/bin/docker-compose
验证安装
docker compose version
apt安装
sudo apt-get update
sudo apt-get install docker-compose
使用案例
Docker Compose 文件格式
Docker Compose 使用 docker-compose.yml
文件来配置应用程序。下面是一个典型的 docker-compose.yml
文件的示例:
services:
web:
image: nginx:alpine
ports:
- "8080:80"
volumes:
- ./web:/usr/share/nginx/html
networks:
- app-network
restart: always
environment:
- TZ=Asia/Shanghai
restart: always
:设置容器在退出或系统重启时自动重启。environment: - TZ=Asia/Shanghai 设置容器时区为上海
常用命令
启动服务
docker compose up
后台启动服务(分离模式)
docker compose up -d
停止服务
docker compose down
重启服务
docker compose restart
查看服务状态
docker compose ps
查看服务日志
docker compose logs
执行服务内的命令
docker compose exec <service> <command>
例如:
docker compose exec web /bin/sh #在 web 服务的容器中启动一个交互式的 shell
构建服务
docker compose build
检查配置文件
docker compose config