Docker Compose 常用命令详解(最新推荐)

 更新时间:2025年04月01日 09:46:26   作者:zru_9602  
Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具,本文将详细介绍 Docker Compose 的常用命令,帮助你高效地管理容器应用,感兴趣的朋友一起看看吧

Docker Compose 常用命令详解

Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具。它通过 docker-compose.yml 文件来管理多个容器的启动、停止、重启等操作,大大简化了容器编排工作。本文将详细介绍 Docker Compose 的常用命令,帮助你高效地管理容器应用。

1. Docker Compose 基础命令

1.1 docker compose up

启动并运行 docker-compose.yml 中定义的所有服务。

# 运行所有容器(在前台运行)
docker compose up

常见参数:

  • -d:后台运行容器。
  • --build:在启动前重新构建服务镜像。
  • --force-recreate:强制重新创建容器。

示例:

# 以后台模式启动容器,并重新构建镜像
docker compose up -d --build

1.2 docker compose down

停止并删除 docker-compose.yml 中定义的所有容器、网络和挂载卷。

# 停止并删除所有容器、网络和卷
docker compose down

常见参数:

  • --volumes:删除所有挂载的卷。
  • --rmi all:删除所有镜像。

示例:

# 停止并删除所有容器,同时删除数据卷和镜像
docker compose down --volumes --rmi all

1.3 docker compose start 和 docker compose stop

  • docker compose start:启动已经停止的容器。
  • docker compose stop:停止运行中的容器(不会删除容器)。

示例:

# 启动所有已停止的容器
docker compose start
# 停止所有正在运行的容器
docker compose stop

2. Docker Compose 服务管理命令

2.1 docker compose ps

查看当前 Compose 管理的容器状态。

# 列出所有服务的状态
docker compose ps

2.2 docker compose logs

查看服务的日志输出。

# 查看所有服务的日志
docker compose logs

常见参数:

  • -f:实时输出日志。
  • --tail n:仅显示最近 n 行日志。

示例:

# 实时查看所有服务的日志
docker compose logs -f

2.3 docker compose exec

在指定的服务容器中执行命令(适用于运行中的容器)。

# 进入某个容器的 shell 环境
docker compose exec <服务名> sh

示例:

# 进入 `web` 容器的 shell
docker compose exec web sh

2.4 docker compose run

exec 类似,但它会启动一个新的容器实例,而不是在已有容器上执行命令。

# 在 `web` 服务容器中启动一个交互式 shell
docker compose run web sh

3. Docker Compose 配置与调试

3.1 docker compose config

验证 docker-compose.yml 文件的语法是否正确。

docker compose config

3.2 docker compose build

构建 docker-compose.yml 文件中定义的所有服务镜像。

docker compose build

常见参数:

  • --no-cache:不使用缓存构建。
  • --pull:强制拉取最新的基础镜像。

示例:

# 重新构建所有服务
docker compose build --no-cache

3.3 docker compose restart

重启 docker-compose.yml 中的所有容器。

docker compose restart

4. Docker Compose 容器管理

4.1 docker compose rm

删除 docker-compose.yml 相关的所有已停止容器。

docker compose rm

常见参数:

  • -f:强制删除,无需确认。
  • -v:同时删除关联的卷。

示例:

# 强制删除所有停止的容器
docker compose rm -f

4.2 docker compose scale

手动调整服务的实例数量(适用于无 deploy 关键字的情况)。

docker compose up -d --scale <服务名>=<数量>

示例:

# 启动 3 个 `web` 服务实例
docker compose up -d --scale web=3

5. 总结

Docker Compose 提供了丰富的命令来管理多容器应用,主要包括:

命令作用
docker compose up启动所有服务
docker compose down停止并删除所有服务
docker compose ps查看运行状态
docker compose logs查看日志
docker compose exec在容器中执行命令
docker compose build构建镜像
docker compose restart重启所有服务
docker compose rm删除已停止的容器

熟练掌握这些命令,可以让你更高效地管理 Docker 容器编排。如果你对某个命令的使用有疑问,欢迎留言讨论!

到此这篇关于Docker Compose 常用命令详解的文章就介绍到这了,更多相关Docker Compose 常用命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • docker-compose安装redis集群教程

    docker-compose安装redis集群教程

    本文介绍了使用Docker Compose部署Redis集群的步骤:编写配置文件设置端口和密码,创建数据卷目录,启动容器并检查状态,若集群创建失败,需手动进入容器执行redis-cli命令,处理密码认证及数据清空问题以完成集群配置
    2025-08-08
  • 你可能不知道的docker命令奇怪巧

    你可能不知道的docker命令奇怪巧

    这篇文章主要介绍了你可能不知道的docker命令的奇怪巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • 从0开始了解Docker入门(小结)

    从0开始了解Docker入门(小结)

    本篇文章主要介绍了从0开始了解Docker(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • 使用Docker将容器打成镜像的方法步骤

    使用Docker将容器打成镜像的方法步骤

    本文主要介绍了使用Docker将容器打成镜像的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • 替换docker容器中的一个文件的实现

    替换docker容器中的一个文件的实现

    在某些情况下,我们可能确实需要更新容器内的文件,本文主要介绍了替换docker容器中的一个文件的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • Docker Compose 实践及梳理

    Docker Compose 实践及梳理

    Docker Compose是一个用于定义和运行多个Docker应用程序的工具。通过使用YAML文件来配置应用程序的服务,使用单个命令可以从配置中创建并启动所有服务,今天通过本文给大家介绍Docker Compose 实践及梳理,感兴趣的朋友一起看看吧
    2021-09-09
  • 浅谈Docker run 容器处于created状态问题

    浅谈Docker run 容器处于created状态问题

    这篇文章主要介绍了解决Docker run 容器处于created状态问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Docker打包前后端项目的实现示例

    Docker打包前后端项目的实现示例

    目前我们大多数服务应该会使用Docker来进行部署,本文主要介绍了Docker打包前后端项目的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • Docker日志太多导致磁盘占满的处理方法

    Docker日志太多导致磁盘占满的处理方法

    这篇文章主要介绍了Docker日志太多导致磁盘占满的处理方法,需要的朋友可以参考下
    2018-10-10
  • docker search mysql报错问题分析及解决

    docker search mysql报错问题分析及解决

    Docker是现在非常流行的一种容器化技术,能够方便开发者将应用程序打包进入容器,做到跨平台的部署,这篇文章主要介绍了docker search mysql报错问题分析及解决的相关资料,需要的朋友可以参考下
    2025-11-11

最新评论