docker-compose up -d --build 和 docker-compose up -d 和 docker-compose build 区别

最简单、最清晰、最直白 的方式给你讲清楚,3 条命令的区别,你一看就懂、永远不会忘!

一句话总结

  • docker-compose build只构建镜像,不启动
  • docker-compose up -d只启动容器,不重新构建镜像
  • docker-compose up -d --build先重新构建镜像,再启动

详细大白话解释(超级好懂)

1. docker-compose build

作用:只打包镜像,不启动容器!

  • 只去执行 Dockerfile
  • 生成新的镜像
  • 不会启动任何服务

适合:你只想重新编译代码 / 重新构建镜像,但暂时不想启动


2. docker-compose up -d

作用:直接启动容器,不重新构建!

  • 已经存在的旧镜像启动
  • 不会重新编译、不会重新构建
  • 如果你改了 Dockerfile → 不会生效!

适合:镜像没变化,只是想启停服务


3. docker-compose up -d --build

作用:先重新构建 → 再启动!

  • 先执行 build(重新打包镜像)
  • 再执行 up -d(启动)
  • 你改了代码、改了 Dockerfile、改了配置 → 必须用这条!

适合:**90% 开发场景都用这条!**改了东西想让它生效 → 直接用这条最稳。


最实用记忆口诀(背这个)

  1. 只想打包 → build
  2. 只想启动旧的 → up -d
  3. 改了东西要生效 → up -d --build

对应你现在的场景

你改了 RabbitMQ 的 Dockerfile 想让延迟插件生效 → 必须用这条

plaintext

复制代码
docker-compose up -d --build

最终结论(你只要记住这个)

平时开发,一律用:

plaintext

复制代码
docker-compose up -d --build

最稳、最安全、永远不会用错!

相关推荐
console.log('npc')2 小时前
Windows 11 安装 WSL2 + Ubuntu + Docker + Codex + Sub2API 教学
windows·docker·powershell·ubantu·codex
仙柒4154 小时前
Docker原理
运维·docker·容器
Cat_Rocky8 小时前
Kubernetes集群升级指南以及自动更新证书
云原生·容器·kubernetes
米高梅狮子9 小时前
第2章 docker容器
运维·docker·云原生·容器·架构·kubernetes·自动化
万里侯9 小时前
分布式系统设计原则:构建高可用的系统架构
微服务·容器·k8s
卧室小白11 小时前
docker网络与服务编排与集群
运维·docker·容器
古城小栈13 小时前
K8s 之 ingress
云原生·容器·kubernetes
借你耳朵说爱你13 小时前
docker容器启动报错:library initialization failed - unable to allocate file descriptor table - out of memory
docker
万里侯13 小时前
微服务与人生:从服务网格看人际关系
微服务·容器·k8s
疯狂成瘾者14 小时前
Kubernetes(简称K8s)
云原生·容器·kubernetes