尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Docker Compose常用命令
Docker Compose常用命令安装docker-comosedocker-compose配置文件及常用指令yaml 文件级docker-compose.yml配置文件示例docker compose常用命令启动服务停止服务重启服务查看运行容器列表查看服务日志构建镜像docker-compose rm删除安装docker-comosedocker20.10之后的版本,默认支持docker compose命令,无需再额外安装docker-compose程序.# 声明版本VER2.35.1# 下载二进制程序wget-chttps://github.com/docker/compose/releases/download/v$VER/docker-compose-linux-x86_64# 创建bin目录mkdir-p$HOME/bin# 移动到binmvdocker-compose-linux-x86_64 ./bin/docker-compose# 授予执行权限chmodx ./bin/docker-compose# 查看docker-compose版本docker-compose-v# 查看docker-compose版本dockercompose versiondocker-compose配置文件及常用指令Docker Compose 使用 YAML 文件来定义多服务的应用。YAML 是 JSON 的一个子集因此也可以使用JSON。Docker Compose 默认使用文件名docker-compose.yml。当然也可以使用-f参数指定具体文件。yaml 文件级Docker Compose 的 YAML 文件包含 4 个一级 key:version、services、networks、volumesversion 是必须指定的而且总是位于文件的第一行。它定义了 Compose 文件格式(主要是 API)的版本。注意version 并非定义 Docker Compose 或 Docker 引擎的版本号。services 用于定义不同的应用服务。上边的例子定义了两个服务:一个名为 lagou-mysql数据库服 务以及一个名为lagou-eureka的微服。Docker Compose 会将每个服务部署在各自的容器中。networks 用于指引 Docker 创建新的网络。默认情况下Docker Compose 会创建 bridge 网络。 这是一种单主机网络只能够实现同一主机上容器的连接。当然也可以使用 driver 属性来指定不 同的网络类型。volumes 用于指引 Docker 来创建新的卷。docker-compose.yml配置文件示例services:# 定义服务confluence:# 定义 confluence 服务# 8.5.19 长期维护版本# 9.2.1 最新版本image:omaidb/confluence:8.5.19# 使用的confluence长期维护版 镜像及其版本container_name:confluence-srv# 容器名称environment:# 设置环境变量-TZAsia/Shanghai# 设置时区为上海# - JVM_MINIMUM_MEMORY1g # JVM 最小内存# - JVM_MAXIMUM_MEMORY12g # JVM 最大内存# - JVM_CODE_CACHE_ARGS-XX:InitialCodeCacheSize1g -XX:ReservedCodeCacheSize8g # JVM 代码缓存参数# 定义服务依赖depends_on:-postgres# 依赖 postgres 服务ports:# 映射端口-80:8090# 将宿主机的 8090 端口映射到容器的 8090 端口volumes:# 定义数据卷-home_data:/var/confluence# 将数据卷挂载到容器的 /var/confluence 目录restart:always# 设置容器始终重启策略networks:# 指定网络-network-bridge# 使用 network-bridge 网络# 定义名为 postgres 的服务postgres:image:postgres:15.4# 使用 postgres 15.4 版本的镜像container_name:postgres-confluence# 容器名称healthcheck:# 健康检查配置test:[CMD,pg_isready,-q,-d,postgres,-U,root]# 检查 PostgreSQL 服务是否可用timeout:45s# 健康检查的超时时间为 45 秒interval:10s# 健康检查的间隔时间为 10 秒retries:10# 健康检查失败后重试的次数为 10 次environment:# 定义环境变量-TZAsia/Shanghai# 设置时区为上海-POSTGRES_USERroot# PostgreSQL 的默认用户名为 root-POSTGRES_PASSWORD123456# PostgreSQL 的默认密码为 123456-APP_DB_USERconfluence# 应用程序的数据库用户名为 confluence-APP_DB_PASS123456# 应用程序的数据库密码为 123456-APP_DB_NAMEconfluence# 应用程序的数据库名称为 confluencevolumes:# 定义数据卷# - ./db:/docker-entrypoint-initdb.d/ # 将本地 ./db 目录挂载到容器的 /docker-entrypoint-initdb.d/ 目录-postgres_data:/var/lib/postgresql/data# 将本地 /data/postgres 目录挂载到容器的 /var/lib/postgresql/data 目录ports:# 定义端口映射-5432:5432# 将本地的 5432 端口映射到容器的 5432 端口restart:always# 服务失败时总是重启networks:# 指定网络-network-bridge# 使用 network-bridge 网络networks:# 定义网络network-bridge:# 定义名为 network-bridge 的网络driver:bridge# 使用 bridge 驱动volumes:# 定义数据卷home_data:# 定义名为 home_data 的数据卷external:false# 数据卷为内部创建postgres_data:# 定义名为 postgres_data 的数据卷external:false# 数据卷为内部创建docker compose常用命令命令 (Command)主要功能 (Description)常用选项 (Common Options)示例 (Example)up构建、(重新)创建、启动并关联服务相关的容器。-d: 后台运行 (Detached mode)--build: 强制重新构建镜像--force-recreate: 强制重新创建容器--no-deps: 不启动链接的服务docker-compose up -ddocker-compose up --builddocker-compose up service_namedown停止并移除容器、网络、卷和镜像。-v,--volumes: 同时移除数据卷--rmi type: 移除镜像 (all或local)--remove-orphans: 移除未在 compose 文件中定义的服务的容器docker-compose downdocker-compose down -vstart启动已经存在的服务容器。docker-compose start service_namedocker-compose startstop停止正在运行的服务容器但不删除它们。-t, --timeout seconds: 停止超时时间 (默认 10s)docker-compose stop service_namedocker-compose stoprestart重启服务容器。-t, --timeout seconds: 重启/停止超时时间docker-compose restart service_namedocker-compose restartps列出 Compose 项目中的容器。-q: 只显示容器 ID--services: 只列出服务名称-a,--all: 显示所有容器 (包括已停止的)docker-compose psdocker-compose ps -qlogs查看服务容器的日志输出。-f,--follow: 持续跟踪日志输出--tail N: 显示最后 N 行日志-t,--timestamps: 显示时间戳docker-compose logs -f service_namedocker-compose logs --tail 50build构建或重新构建服务的镜像。--no-cache: 构建镜像时不使用缓存--pull: 始终尝试拉取更新的基础镜像docker-compose build service_namedocker-compose build --no-cachepull拉取服务依赖的镜像。--ignore-pull-failures: 拉取失败时继续-q,--quiet: 只显示进度不输出详细信息docker-compose pulldocker-compose pull service_nameexec在正在运行的容器中执行命令。-d: 分离模式运行-T: 禁用伪 TTY 分配 (例如用于管道)-u,--user user: 指定用户docker-compose exec service_name bashdocker-compose exec -T db psql -U user -d dbnamerun在新容器中运行一次性命令。--rm: 命令结束后移除容器-e KEYVAL: 设置环境变量-v host:cont: 挂载卷--service-ports: 映射服务端口docker-compose run --rm web python manage.py migratedocker-compose run -e DEBUG1 webconfig验证和查看 Compose 文件配置。-q,--quiet: 只验证配置无错误时不输出--services: 打印服务名称列表--volumes: 打印卷名称列表docker-compose configdocker-compose config -qrm删除已停止的服务容器。-f,--force: 强制删除-s,--stop: 在删除前先停止容器-v: 同时删除关联的匿名卷docker-compose rmdocker-compose rm -fsvpause暂停服务中的容器进程 (利用 cgroup freezer)。docker-compose pause service_nameunpause恢复服务中被暂停的容器进程。docker-compose unpause service_namekill通过发送 SIGKILL 信号强制停止服务容器。-s signal: 指定发送的信号 (默认 SIGKILL)docker-compose kill service_namedocker-compose kill -s SIGTERM web通用选项 (Global Options):-f, --file filename: 指定一个或多个 Compose 配置文件 (默认为docker-compose.yml)。-p, --project-name name: 指定项目名称 (默认为当前目录名)。--profile profile_name: 激活指定配置文件的服务。启动服务启动服务# 前台启动服务dockercompose up## -d 守护进程dockercompose up-d启动服务# 启动服务dockercompose start停止服务停止服务# 停止并销毁服务dockercompose down停止服务# 停止已运行的服务dockercompose stop重启服务重启服务# 重启服务dockercompose restart查看运行容器列表列出所有运行容器# 列出所有运行容器dockercomposeps## -a 包括停止的容器dockercomposeps-a查看服务日志查看服务日志# 查看服务日志dockercompose logs服务名构建镜像构建# 构建或者重新构建服务dockercompose builddocker-compose rm删除# 删除已停止的服务容器dockercomposerm参数解释-f, --force不要求确认删除-s, --stop如果需要请在删除之前停止容器-v, --volumes删除附加到容器的所有匿名卷
RELATED

相关推荐

屹晶微EG11722 150V/3A/110kHz降压DCDC电源芯片,内置功率MOS与使能保护,用于电动车/快充/工业电源

屹晶微EG11722 150V/3A/110kHz降压DCDC电源芯片,内置功率MOS与使能保护,用于电动车/快充/工业电源

在高压降压电源设计中,传统方案往往需要外置功率管和复杂的外围电路,增加了设计难度和BOM成本。屹晶微电子推出的EG11722是一款宽输入电压范围(10V至150V)的降压型DC-DC电源管理芯片,内部集成了150V/3A功率MOS管、使能…

📅 2026/9/8 14:17:46
Visual Studio Code 1.132 版本发布:集成浏览器、语音输入等功能升级!

Visual Studio Code 1.132 版本发布:集成浏览器、语音输入等功能升级!

Visual Studio Code 1.132 版本正式发布,此版本带来了一系列新功能,如集成浏览器元素级反馈、多语言语音输入等,为用户带来更便捷的使用体验。集成浏览器新功能该版本在集成浏览器中引入元素级反馈功能,用户可对特定网页元素添加注…

📅 2026/9/10 9:42:10
正则表达式——选择、分组和后向引用

正则表达式——选择、分组和后向引用

选择、分组和后向引用1、选择操作2、子模式3、捕获分组和后向引用4、非捕获分组1、选择操作 简单地说,选择操作可在多个可选模式中匹配一个。例如,你想在“The Rime of the Ancyent Mariner”中找出the出现过多少次,包括THE、The和the等形式…

📅 2026/9/8 3:58:58
MORE NEWS

更多资讯

📰

大模型训练与推理优化(一)

大模型训练与推理优化 1. GPU 时间计算基础1.1 GPU 计算中的基本概念 h:hidden size,隐藏维度L:Transformer Block 层数V:词表大小参数量、FLOPs、显存和训练时间之间存在直接联系 1.2 Transformer 模型参数计算 1.2.1 Self-Atten…

📰

IGBT门极电阻怎么算?门极适配与保护电路设计|硬件篇·14

前言 450A的IGBT,门极电阻选多大合适?开通和关断电阻为什么要分开?退饱和检测怎么接才能不误触发? IGBT驱动核选好了(见硬件篇十三),门极适配电路才是真正决定开关性能的环节。本文以英飞凌 FF4…

📰

HCIE-Storage V4.0(存储4.0)考纲变化拆解:新增 15 分故障排查与 AI 存储考点

一句话摘要:HCIE-Storage V4.0 将于 2026 年 9 月 30 日正式发布。相对 V3.0,改动可以归纳成两条主线——考纲从四大模块重构成 CCSS/CCSN/CDPS 三大能力模块并加入 AI 存储内容;实验考试自 2026 年 7 月 1 日起新增 15 分"故障排查&quo…

📰

av_frame_make_writable 与深拷贝 AVFrame:FFmpeg 内存模型的本质差异

av_frame_make_writable 不是深拷贝,仅确保帧数据可写,可能触发缓冲区拷贝但不分配新结构体;深拷贝则创建完全独立的副本,包含新结构体与数据。前者适用于原地修改(如滤镜、编码前处理),后者用于需同时保留原始帧与修改帧的场景。性能上,深拷贝开销更大,应优先使用 ma…

📰

RedHat|开源深度评测 Kiali:Istio 服务网格可观测控制台源码静态审计

RedHat|开源深度评测 Kiali:Istio 服务网格可观测控制台源码静态审计仓库地址:https://github.com/kiali/kiali 取证快照Commit:d733a096e02eea357a274edcbbde8314e80786f4 出品厂商:RedHat红帽开源生态 评测范式&…

📰

2026 Turnitin 查重和 AI 检测都不过?一站式降AI率网站实测解析

一、前言:2026 高校论文审核新难题 随着高校学术审核体系不断升级,知网、维普等主流检测平台全面上线AIGC 智能检测功能,当代毕业生的论文写作与修改迎来双重考验。以往论文仅需攻克重复率超标问题,如今还要规避 AI 写作痕迹检测风…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬