docker compose用法详解

下面是每个 docker compose 配置参数的用法和示例:

全局选项用法示例

  1. --ansi

    控制何时打印 ANSI 控制字符。
    示例:

    bash 复制代码
    docker compose --ansi never up

    禁用 ANSI 控制字符的打印(颜色和格式)。

  2. --compatibility

    在向后兼容模式下运行 Compose。
    示例:

    bash 复制代码
    docker compose --compatibility up

    以向后兼容模式启动服务,以便与旧版本的 Docker Compose 保持兼容。

  3. --dry-run

    以 dry run 模式执行命令,不会对系统进行任何更改。
    示例:

    bash 复制代码
    docker compose --dry-run up

    模拟启动容器,但不实际执行任何操作。

  4. --env-file

    指定一个或多个环境文件。
    示例:

    bash 复制代码
    docker compose --env-file .env.production up

    使用 .env.production 中定义的环境变量。

  5. -f, --file

    指定一个或多个 Compose 配置文件。
    示例:

    bash 复制代码
    docker compose -f docker-compose.yml -f docker-compose.override.yml up

    使用 docker-compose.ymldocker-compose.override.yml 文件启动服务。

  6. --parallel

    设置并行操作的最大数目,-1 表示无限制。
    示例:

    bash 复制代码
    docker compose --parallel 5 up

    在启动服务时最多允许 5 个操作并行执行。

  7. --profile

    指定一个或多个配置文件以启用。
    示例:

    bash 复制代码
    docker compose --profile debug up

    启用 debug 配置文件以启动服务。

  8. --progress

    设置进度输出的类型(auto, tty, plain, quiet)。
    示例:

    bash 复制代码
    docker compose --progress plain up

    使用纯文本格式的进度输出启动服务。

  9. --project-directory

    指定一个替代的工作目录。
    示例:

    bash 复制代码
    docker compose --project-directory /myapp up

    使用 /myapp 目录作为项目的工作目录。

  10. -p, --project-name

    指定项目名称。
    示例:

    bash 复制代码
    docker compose -p myproject up

    使用 myproject 作为项目名称启动服务。

命令用法示例

  1. attach

    附加本地标准输入、输出和错误流到服务的运行容器。
    示例:

    bash 复制代码
    docker compose attach web

    附加到服务名为 web 的容器。

  2. build

    构建或重建服务。
    示例:

    bash 复制代码
    docker compose build

    构建项目中的所有服务。

  3. config

    解析、解析和呈现 compose 文件为规范格式。
    示例:

    bash 复制代码
    docker compose config

    验证并显示当前项目的 Docker Compose 配置。

  4. cp

    在服务容器和本地文件系统之间复制文件/文件夹。
    示例:

    bash 复制代码
    docker compose cp web:/var/logs ./logs

    web 服务容器的 /var/logs 目录复制到本地 ./logs 目录。

  5. create

    为服务创建容器。
    示例:

    bash 复制代码
    docker compose create

    创建所有服务的容器但不启动它们。

  6. down

    停止并移除容器、网络。
    示例:

    bash 复制代码
    docker compose down

    停止项目中的所有服务并移除相关资源。

  7. events

    接收来自容器的实时事件。
    示例:

    bash 复制代码
    docker compose events

    显示所有服务的实时事件日志。

  8. exec

    在运行的容器中执行命令。
    示例:

    bash 复制代码
    docker compose exec web ls /app

    web 服务的容器中执行 ls /app 命令。

  9. images

    列出已创建容器使用的镜像。
    示例:

    bash 复制代码
    docker compose images

    列出项目中使用的所有镜像。

  10. kill

    强制停止服务容器。
    示例:

    bash 复制代码
    docker compose kill

    强制停止所有服务的容器。

  11. logs

    查看容器的输出。
    示例:

    bash 复制代码
    docker compose logs -f

    持续跟踪显示所有服务容器的日志输出。

  12. ls

    列出正在运行的 compose 项目。
    示例:

    bash 复制代码
    docker compose ls

    列出所有当前运行的 Docker Compose 项目。

  13. pause

    暂停服务。
    示例:

    bash 复制代码
    docker compose pause web

    暂停名为 web 的服务。

  14. port

    打印端口绑定的公共端口。
    示例:

    bash 复制代码
    docker compose port web 80

    显示 web 服务的容器中端口 80 映射到的主机端口。

  15. ps

    列出容器。
    示例:

    bash 复制代码
    docker compose ps

    列出当前项目的所有容器及其状态。

  16. pull

    拉取服务镜像。
    示例:

    bash 复制代码
    docker compose pull

    拉取所有服务的镜像。

  17. push

    推送服务镜像。
    示例:

    bash 复制代码
    docker compose push

    推送所有服务的镜像到注册表。

  18. restart

    重启服务容器。
    示例:

    bash 复制代码
    docker compose restart web

    重启 web 服务的容器。

  19. rm

    删除已停止的服务容器。
    示例:

    bash 复制代码
    docker compose rm

    删除所有已停止的服务容器。

  20. run

    在服务上运行一次性命令。
    示例:

    bash 复制代码
    docker compose run web echo "Hello, World!"

    web 服务的容器上运行 echo "Hello, World!"

  21. scale

    调整服务规模。
    示例:

    bash 复制代码
    docker compose up --scale web=3

    web 服务的实例数量扩展到 3 个。

  22. start

    启动服务。
    示例:

    bash 复制代码
    docker compose start

    启动项目中所有已停止的服务。

  23. stats

    显示容器资源使用统计的实时流。
    示例:

    bash 复制代码
    docker compose stats

    实时显示所有服务容器的资源使用情况。

  24. stop

    停止服务。
    示例:

    bash 复制代码
    docker compose stop

    停止所有服务。

  25. top

    显示运行中的进程。
    示例:

    bash 复制代码
    docker compose top

    显示所有服务容器中运行的进程。

  26. unpause

    取消暂停服务。
    示例:

    bash 复制代码
    docker compose unpause web

    取消暂停 web 服务。

  27. up

    创建并启动容器。
    示例:

    bash 复制代码
    docker compose up -d

    在后台模式下创建并启动所有服务容器。

  28. version

    显示 Docker Compose 版本信息。
    示例:

    bash 复制代码
    docker compose version

    显示 Docker Compose 的版本信息。

  29. wait

    阻塞直到第一个服务容器停止。
    示例:

    bash 复制代码
    docker compose wait

    阻塞并等待,直到任何一个服务容器停止运行。

  30. watch

    监视服务的构建上下文,并在文件更新时重建/刷新容器。
    示例:

    bash 复制代码
    docker compose watch web

    监视 web 服务的文件更改并在需要时自动重建/刷新容器。

这些示例演示了 Docker Compose 中各种配置参数和命令的用法,以帮助更好地理解它们的功能和应用场景。

相关推荐
西西弗Sisyphus28 分钟前
RAGFlow 基于深度文档理解构建的开源 RAG引擎 - 在 Ubuntu 上安装 Docker Engine
docker·大模型·rag
@泽栖6 小时前
Docker 常用命令
运维·服务器·docker
鲁正杰8 小时前
在一个服务器上抓取 Docker 镜像并在另一个服务器上运行
运维·服务器·docker
老大白菜9 小时前
Windows 11 安装 Dify 完整指南 非docker环境
windows·docker·容器
VinciYan12 小时前
基于Jenkins+Docker的自动化部署实践——整合Git与Python脚本实现远程部署
python·ubuntu·docker·自动化·jenkins·.net·运维开发
tntlbb13 小时前
Ubuntu20.4 VPN+Docker代理配置
运维·ubuntu·docker·容器
Gabriel_liao14 小时前
Docker安装Neo4j
docker·容器·neo4j
豆豆豆豆变17 小时前
Docker轻量级可视化工具Portainer
docker·容器·自动化运维
花晓木17 小时前
k8s etcd 数据损坏处理方式
容器·kubernetes·etcd
运维&陈同学17 小时前
【模块一】kubernetes容器编排进阶实战之基于velero及minio实现etcd数据备份与恢复
数据库·后端·云原生·容器·kubernetes·etcd·minio·velero