531 字
3 分钟
Docker Compose 常用命令速查
这篇用来复制 Docker Compose 常用命令。
查看服务状态
docker compose ps查看所有容器,包括已退出:
docker compose ps -a启动服务
前台启动:
docker compose up后台启动:
docker compose up -d只启动某个服务:
docker compose up -d SERVICE启动前重新构建:
docker compose up -d --build停止服务
停止并删除容器和默认网络:
docker compose down只停止,不删除容器:
docker compose stop重新启动:
docker compose restart只重启某个服务:
docker compose restart SERVICE不删除 volume 的停止方式
docker compose down默认不会删除 named volumes。
如果加了这个参数才会删除 volume:
docker compose down -v所以不想删数据时,不要加 -v。
查看日志
查看全部日志:
docker compose logs实时跟随:
docker compose logs -f查看某个服务:
docker compose logs -f SERVICE只看最后 100 行:
docker compose logs --tail 100 SERVICE带时间戳:
docker compose logs -f --timestamps SERVICE进入容器
docker compose exec SERVICE bash如果没有 bash:
docker compose exec SERVICE sh以 root 进入:
docker compose exec -u root SERVICE bash临时运行一个服务命令
docker compose run --rm SERVICE bash执行一次命令:
docker compose run --rm SERVICE npm install构建镜像
docker compose build不使用缓存:
docker compose build --no-cache只构建某个服务:
docker compose build SERVICE拉取镜像
docker compose pull只拉某个服务:
docker compose pull SERVICE指定 compose 文件
docker compose -f docker-compose.yml -f docker-compose.override.yml up -d指定项目名:
docker compose -p PROJECT_NAME up -dprofiles
启动指定 profile:
docker compose --profile dev up -d多个 profile:
docker compose --profile dev --profile debug up -d查看最终配置
docker compose config这个命令会展开变量、合并多个 compose 文件,排查配置时很好用。
常用参数解释
up:创建并启动服务。
-d:后台运行。
down:停止并删除容器和网络。
stop:只停止容器,不删除。
restart:重启服务。
logs -f:实时跟随日志。
exec:进入正在运行的服务容器执行命令。
run --rm:临时创建容器执行命令,结束后删除。
build --no-cache:不使用构建缓存。
-f:指定 compose 文件。
-p:指定项目名,影响容器、网络、volume 前缀。
--profile:启用带 profile 的服务。
Docker Compose 常用命令速查
https://r-gc.github.io/posts/notes/docker/docker-compose-commands/