安装
- 方式一
sudo pip install docker-compose
- 方式二(linux)
# 下载
sudo curl -L "https://github.com/docker/compose/releases/download/1.28.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 修改权限
sudo chmod +x /usr/local/bin/docker-compose
常用命令
docker-compose down 停止删除资源(容器,网络,数据卷等)
docker-compose up [-d] 创建并且运行容器
docker-compose logs [-tf] [SERVICE] 查看日志
docker-compose ps [SERVICE] 显示service对应的容器列表
docker-compose pull [SERVICE] 获取服务对应的镜像
docker-compose build 构建或者重建services
docker-compose exec SERVICE COMMAND 运行的service中执行一个命令
docker-compose rm [-s] [SERVICE] 删除停止的容器
docker-compose run SERVEICE [COMMAND] 容器启动时,执行一个命令,该命令会覆盖service配置中定义的命令
配置文件说明(compose file)
version: "3.9"
services:
proxy:
build: ./proxy
networks:
- frontend
app:
build: ./app
depends_on:
- db
volumes:
- ./static:/static
env_file: .env
ports:
- "80:80"
environment:
SERVER_NAME: a.com.cn
networks:
- frontend
- backend
db:
image: postgres
networks:
- backend
networks:
frontend:
# Use a custom driver
driver: custom-driver-1
backend:
# Use a custom driver which takes special options
driver: custom-driver-2
- network说明
连接外部容器(非compose 管理的容器),创建一个外部网络docker network create mysql,
然后将外部容器连接至该网络docker network connect mysql db(db是外部容器名),compose file连接到该网络,配置文件如下:
services:
web:
# ...
networks:
- db
networks:
db:
external:
name: mysql
参考