DOCKER的一些有用命令

重编并启动 docker compose up -d --build

这条命令是 Docker Compose 中最常用的"黄金组合"之一,通常用于开发环境或代码更新后。

简单来说,它的意思是:"强制根据最新代码重新打包镜像,然后在后台启动所有服务。"

我们可以把它拆解为三个部分来理解:

拆解

docker compose 工具调用 告诉系统你要使用 Docker Compose 这个编排工具。

up 启动服务 根据 docker-compose.yml 文件创建并启动容器。

-d 后台运行 Detached 模式。容器启动后不会占用当前终端窗口,而是让服务在后台默默运行。

--build 强制构建 关键点! 在启动前,先执行 docker build。即使之前构建过,它也会检查 Dockerfile 或代码是否有变动,并重新打包镜像。

为什么要加 --build?

这是很多初学者容易困惑的地方。

如果不加 --build (docker compose up -d):

Docker 会直接复用已经存在的旧镜像来启动容器。如果你修改了代码或 Dockerfile,直接运行这条命令,你的修改不会生效,因为容器还在用旧的"模具"。

加上 --build (docker compose up -d --build):

Docker 会先检查你的 Dockerfile 和代码文件,重新编译、打包生成一个新的镜像,然后再用这个最新的镜像启动容器。这能确保你的修改(比如修复了一个 Bug)立刻在容器中生效。

🚀 什么时候使用这条命令?

根据开发场景,我为你总结了一个简单的速查表:

场景 推荐命令 原因

修改了代码/依赖 docker compose up -d --build 必须重新打包镜像,否则新代码进不去。

修改了 Dockerfile docker compose up -d --build 必须重新构建,让配置变更生效。

首次部署项目 docker compose up -d --build 第一次肯定没有镜像,需要构建。

仅修改了配置/重启 docker compose up -d 如果只是改了端口映射或环境变量,不需要重新构建镜像,直接重启即可。

总结

你可以把这条命令理解为:"不管之前是什么样,先把最新代码打包进去,然后在后台把服务跑起来!" 这是开发过程中最稳妥、最常用的命令。

基于DOCKER YAML来列状态

docker compose -f docker-compose.yml ps

就不用docker ps 之后看到一些无关的DOCKER

相关推荐
сокол2 小时前
【网安-Web渗透测试-靶场系列】AWD-Platform(ctf-hub)
linux·服务器·ubuntu·网络安全·docker
月走乂山5 小时前
Windows 10 WSL2 安装问题排查与解决全记录
windows·docker·hyper-v·故障排查·wsl2
SuniaWang8 小时前
《Agentx专栏》03-架构设计:AgentX的六层架构是如何生长出来的
java·数据库·redis·docker·ai·架构
WAIT_TIME11 小时前
基于 Docker 快速构建 MySQL InnoDB Cluster 高可用集群与 Router 读写分离
mysql·docker·集群·innodb cluster
秋漓11 小时前
Docker学习与使用
学习·docker·容器
%KT%11 小时前
Windows安装wsl2和docker desktop,部署qdrant向量数据库
运维·docker·容器
PythonAI实战君12 小时前
Docker Compose 部署 MySQL 中文乱码避坑指南
docker·容器
PythonAI实战君12 小时前
若依后台管理系统 - Docker Compose 阿里云部署指南
后端·docker
小匠石钧知12 小时前
01_以RockyLinux的镜像为基础_构建自己开发学习所需的镜像
linux·docker·jdk·mariadb
摇滚侠13 小时前
Docker 安装 MySQL 8
mysql·docker·容器