在使用 Docker Compose 管理多容器应用时,常见的命令帮助我们高效地管理容器的生命周期、服务、日志等。以下是一些常用的 Docker Compose 命令及其详细讲解:
1. docker-compose up
这个命令用于启动定义在 docker-compose.yml
文件中的服务。
-
用法:
docker-compose up
-
常用选项:
-d
:后台运行容器,称为“detached”模式。docker-compose up -d
--build
:在启动服务之前强制重新构建镜像。docker-compose up --build
2. docker-compose down
这个命令用于停止并删除容器、网络、卷和镜像(依赖镜像)。
-
用法:
docker-compose down
-
常用选项:
--volumes
:删除与容器关联的卷。docker-compose down --volumes
--rmi
:删除与服务关联的镜像。可以使用local
(只删除本地构建的镜像)或all
(删除所有相关镜像)。docker-compose down --rmi all
3. docker-compose start
启动已停止的容器,不会重新创建容器,只是启动它们。
- 用法:
docker-compose start
4. docker-compose stop
停止运行的容器,但不会删除它们。
- 用法:
docker-compose stop
5. docker-compose restart
重新启动容器。
- 用法:
docker-compose restart
6. docker-compose ps
显示与当前项目相关的所有服务及其状态。
- 用法:
docker-compose ps
7. docker-compose logs
查看运行中的服务的日志。
-
用法:
docker-compose logs
-
常用选项:
-f
:实时跟踪日志输出(类似tail -f
)。docker-compose logs -f
服务名
:查看特定服务的日志。docker-compose logs web
8. docker-compose exec
在某个运行的容器中执行命令,类似于 docker exec
。
-
用法:
docker-compose exec <服务名> <命令>
-
示例: 在
web
服务的容器中运行 Bash shell:docker-compose exec web bash
9. docker-compose build
构建或重新构建项目中的服务镜像。
-
用法:
docker-compose build
-
常用选项:
--no-cache
:构建时不使用缓存。docker-compose build --no-cache
10. docker-compose pull
从 Docker 注册表中拉取服务镜像。
- 用法:
docker-compose pull
11. docker-compose rm
移除停止的服务容器。
-
用法:
docker-compose rm
-
常用选项:
-f
:强制删除容器,而不提示确认。docker-compose rm -f
12. docker-compose config
验证 docker-compose.yml
文件的配置,或查看实际的应用配置。
-
用法:
docker-compose config
-
常用选项:
--services
:列出配置中的所有服务名称。docker-compose config --services
13. docker-compose scale
调整服务的容器数量(只适用于版本 2.x 之前的 Compose 配置)。
-
用法:
docker-compose scale <服务名>=<实例数>
-
示例: 运行 3 个
web
容器:docker-compose scale web=3
14. docker-compose version
查看 Docker Compose 的版本信息。
- 用法:
docker-compose version
这些命令可以帮助你快速地管理容器化应用,从启动、停止、到日志查看、配置验证等。根据实际需求选择合适的命令及选项。