4.1 KiB
4.1 KiB
1. 启动服务
docker-compose up
- 作用:根据
docker-compose.yml文件启动所有定义的服务。如果镜像不存在,它会自动构建或拉取所需的镜像。 - 常用选项:
-d:后台运行容器(detached mode),不显示日志输出。docker-compose up -d--build:强制重新构建服务,即使已经存在镜像。docker-compose up --build
2. 停止服务
docker-compose stop
- 作用:停止正在运行的服务,但不删除容器。
- 停止后,容器的状态会保留,容器数据不会丢失。
3. 停止并删除所有服务
docker-compose down
- 作用:停止并删除所有服务、网络和卷(除非显式定义了
volumes持久化)。 - 常用选项:
--volumes:同时删除与服务相关联的卷(慎用!可能会丢失持久化的数据)。docker-compose down --volumes--rmi:删除与服务关联的镜像。docker-compose down --rmi all
4. 查看容器状态
docker-compose ps
- 作用:查看当前
docker-compose.yml定义的容器的运行状态,包括容器名、状态、端口映射等信息。
5. 重启服务
docker-compose restart
- 作用:重新启动所有服务,或者可以通过指定服务名来重启某个服务。
- 示例:
docker-compose restart python-app
6. 构建服务
docker-compose build
- 作用:根据
docker-compose.yml文件中的定义重新构建服务镜像。 - 常用选项:
--no-cache:在构建镜像时不使用缓存,强制构建新镜像。docker-compose build --no-cache
7. 查看服务日志
docker-compose logs
- 作用:查看服务的日志输出,类似于使用
docker logs查看单个容器的日志。 - 常用选项:
-f:实时查看日志(类似tail -f)。docker-compose logs -f- 指定特定服务的日志:
docker-compose logs python-app
8. 运行单个命令
docker-compose run <service_name> <command>
- 作用:在指定的服务中运行命令。与
docker exec类似,但docker-compose run会启动一个新容器实例来运行命令,而不是在现有的容器中执行。 - 示例:
docker-compose run python-app python manage.py migrate
9. 进入容器
docker-compose exec <service_name> <command>
- 作用:在运行的容器中执行命令(与
docker exec类似)。 - 示例:
这将启动
docker-compose exec python-app bashpython-app服务的一个交互式bashshell。
10. 查看容器使用的网络
docker-compose network ls
- 作用:查看当前
docker-compose管理的网络。
11. 扩展服务
docker-compose up --scale <service_name>=<num>
- 作用:扩展某个服务的副本数量(多实例)。例如,你想扩展某个服务以便运行多个副本(通常用于负载均衡)。
- 示例:
这将启动 3 个
docker-compose up --scale python-app=3python-app容器实例。
12. 查看容器使用的卷
docker-compose volume ls
- 作用:列出当前
docker-compose中定义的卷。
13. 删除未使用的卷
docker-compose down --volumes
- 作用:删除当前服务相关的所有卷,通常是停止并删除服务后清理卷使用的空间。
14. 停止某个特定的服务
docker-compose stop <service_name>
- 作用:停止指定的服务容器。
15. 开始某个特定的服务
docker-compose start <service_name>
- 作用:启动已经停止的指定服务容器。
16. 导出容器配置
docker-compose config
- 作用:验证并查看完整的合并后的配置。对于较复杂的
docker-compose.yml文件,这可以帮助调试和验证配置是否正确。