Docker Compose 常用命令详解

Docker Compose 常用命令详解

Docker Compose 是 Docker 官方编排工具之一,用于定义和运行多容器 Docker 应用程序。通过 docker-compose.yml 文件,开发者可以轻松管理服务、网络、卷以及各服务之间的依赖关系。以下将介绍一些常用的 Docker Compose 命令及其应用场景。


1. docker-compose up

用途: 启动并运行 docker-compose.yml 文件中定义的所有服务。

docker-compose up

常用选项:

  • -d: 后台运行容器。
  • --build: 强制重新构建服务的镜像。
  • <service_name>: 启动特定服务,而不是所有服务。

示例:

docker-compose up -d

这个命令将以后台模式启动所有定义的服务。如果你只想启动某个特定服务,可以这样做:

docker-compose up -d mysql

这将只启动 mysql 服务,并以后台模式运行。


2. docker-compose down

用途: 停止并移除所有与当前环境相关的容器、网络、卷和镜像。

docker-compose down

常用选项:

  • --volumes: 移除与 Compose 项目相关的所有卷。
  • --rmi: 移除与服务相关的镜像。可选值包括 alllocal

示例:

docker-compose down --volumes

这个命令将停止所有容器,移除网络和卷。常用于清理环境。


3. docker-compose ps

用途: 列出所有由当前 Compose 项目管理的容器及其状态。

docker-compose ps

示例:

docker-compose ps

运行此命令后,你将看到所有服务的容器状态、端口映射和名称。这对于查看服务是否正常运行非常有用。


4. docker-compose logs

用途: 查看由 Compose 管理的所有服务的日志输出。

docker-compose logs

常用选项:

  • -f: 实时跟踪日志输出。
  • <service_name>: 查看某个特定服务的日志。

示例:

docker-compose logs -f

这个命令将实时显示所有服务的日志。如果你只关心某个服务,例如 web 服务:

docker-compose logs -f web

5. docker-compose stop

用途: 停止运行的容器,但不会移除它们。

docker-compose stop

示例:

docker-compose stop

这个命令将停止所有服务的容器,但可以通过 docker-compose start 命令再次启动它们。


6. docker-compose start

用途: 启动已停止的服务容器。

docker-compose start

示例:

docker-compose start

这个命令将重新启动已通过 docker-compose stop 停止的服务。


7. docker-compose restart

用途: 重启服务容器。

docker-compose restart

示例:

docker-compose restart

这个命令将停止并立即重新启动所有服务。你也可以重启某个特定服务:

docker-compose restart web

8. docker-compose build

用途: 根据 Dockerfile 重新构建服务镜像。

docker-compose build

常用选项:

  • --no-cache: 不使用缓存来构建镜像。
  • <service_name>: 仅构建指定的服务。

示例:

docker-compose build --no-cache

这个命令将强制重新构建所有服务的镜像,不使用任何缓存。


9. docker-compose exec

用途: 在已启动的容器中执行命令。

docker-compose exec <service_name> <command>

常用选项:

  • -T: 不分配伪终端。

示例:

docker-compose exec web /bin/bash

这个命令将打开一个 Bash shell,允许你在 web 服务的容器内执行命令。


10. docker-compose run

用途: 运行一个一次性命令的容器,而不是启动服务。

docker-compose run <service_name> <command>

常用选项:

  • --rm: 命令执行完成后自动移除容器。

示例:

docker-compose run --rm web python manage.py migrate

这个命令将在 web 服务中运行 python manage.py migrate 命令,执行完成后删除容器。


结语

Docker Compose 提供了一组功能强大的命令,帮助开发者轻松管理多容器应用程序。通过掌握这些常用命令,你可以更高效地处理开发、测试和部署任务。无论是启动服务、查看日志、还是构建镜像,Docker Compose 都能够让你的工作流程更加顺畅。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值