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 中各种配置参数和命令的用法,以帮助更好地理解它们的功能和应用场景。

相关推荐
时迁2471 小时前
【k8s】k8s是怎么实现自动扩缩的
云原生·容器·kubernetes·k8s
诡异森林。4 小时前
Docker--Docker网络原理
网络·docker·容器
ALex_zry5 小时前
Docker Macvlan网络配置实战:解决“network already exists“错误
网络·docker·php
IT小辉同学5 小时前
Docker如何更换镜像源提高拉取速度
spring cloud·docker·eureka
matrixlzp6 小时前
K8S Service 原理、案例
云原生·容器·kubernetes
GnixAij7 小时前
Docker SSH端口转发
docker·ssh
angushine7 小时前
让Docker端口映射受Firewall管理而非iptables
运维·docker·容器
玄明Hanko8 小时前
生产环境到底能用Docker部署MySQL吗?
后端·mysql·docker
玄明Hanko8 小时前
Quarkus+Docker最全面完整教程:手把手搞定Java云原生
后端·docker·云原生
SimonLiu0099 小时前
清理HiNas(海纳斯) Docker日志并限制日志大小
java·docker·容器