当前位置: 首页 > news >正文

Docker Compose 常用命令详解

Docker Compose 常用命令详解

Docker Compose 是 Docker 官方提供的一个用于管理多个容器的工具,可以使用 docker-compose.yml 文件定义和运行多容器应用。本篇博客将详细介绍 Docker Compose 的常用命令,帮助你更高效地管理容器。


1. docker compose up - 启动容器

作用:根据 docker-compose.yml 文件启动并运行所有服务。

常见用法

# 启动所有服务(如果镜像不存在,会自动构建)
docker compose up

# 后台运行(推荐生产环境使用)
docker compose up -d

示例输出

Creating network myproject_default with the default driver
Creating myproject_db_1 ... done
Creating myproject_web_1 ... done

2. docker compose down - 停止并删除容器

作用:停止 docker-compose.yml 运行的所有容器,并删除网络等资源。

常见用法

# 停止并删除所有容器、网络、卷等
docker compose down

# 停止并删除容器,但保留数据卷
docker compose down --volumes

3. docker compose ps - 查看运行中的服务

作用:列出当前 docker-compose.yml 启动的所有服务及状态。

用法

docker compose ps

示例输出

  Name                 Command               State           Ports         
----------------------------------------------------------------------------
myproject_db_1   docker-entrypoint.sh mysqld   Up      3306/tcp         
myproject_web_1  python app.py                Up      0.0.0.0:5000->5000/tcp

4. docker compose logs - 查看日志

作用:获取容器日志,帮助排查问题。

常见用法

# 查看所有服务日志
docker compose logs

# 持续实时查看日志(类似 `tail -f`)
docker compose logs -f

# 查看某个服务的日志
docker compose logs web

5. docker compose start / stop - 启动或停止服务

作用

  • docker compose start 启动已创建但停止的容器。
  • docker compose stop 停止正在运行的容器(不会删除)。

用法

# 启动所有服务
docker compose start

# 启动指定服务
docker compose start web

# 停止所有服务
docker compose stop

# 停止指定服务
docker compose stop db

6. docker compose restart - 重启服务

作用:重启指定服务或所有服务。

用法

# 重启所有服务
docker compose restart

# 重启某个服务
docker compose restart web

7. docker compose build - 构建镜像

作用

  • docker-compose.yml 中的服务需要构建镜像时,使用 docker compose build 命令手动构建。
  • 可用于更新代码后重新构建镜像。

常见用法

# 构建所有服务的镜像
docker compose build

# 仅构建某个服务
docker compose build web

# 强制重新拉取依赖镜像并构建
docker compose build --no-cache

8. docker compose exec / run - 运行命令

docker compose exec - 在运行中的容器中执行命令

用法

# 在 `web` 服务的容器中打开交互式终端
docker compose exec web bash

# 在 `db` 容器中运行 MySQL 命令行工具
docker compose exec db mysql -uroot -p

docker compose run - 运行新容器执行命令

用法

# 运行 `web` 容器的 Python 交互环境
docker compose run web python

区别

  • docker compose exec 作用于已有的运行中的容器。
  • docker compose run 启动一个新的容器执行命令。

9. docker compose rm - 删除容器

作用:删除停止的容器(不会影响数据卷)。

用法

# 删除所有停止的容器
docker compose rm

# 强制删除所有容器
docker compose rm -f

10. docker compose config - 验证配置

作用:检查 docker-compose.yml 文件的语法是否正确。

用法

docker compose config

示例输出

services:
  web:
    image: python:3.9
    ports:
      - 8000:8000
version: '3.8'

11. 组合命令示例

# 停止并删除所有容器
docker compose down

# 构建镜像
docker compose build

# 启动服务(后台模式)
docker compose up -d

# 查看运行状态
docker compose ps

# 进入某个容器终端
docker compose exec web bash

12. 总结

命令作用
docker compose up启动所有服务
docker compose down停止并删除容器
docker compose ps查看运行状态
docker compose logs查看日志
docker compose start/stop/restart启动/停止/重启服务
docker compose build构建镜像
docker compose exec在运行中的容器执行命令
docker compose run运行新容器执行命令
docker compose rm删除容器
docker compose config验证配置文件

掌握这些常用命令,可以更高效地管理 Docker Compose 项目!🚀

http://www.dtcms.com/a/83929.html

相关文章:

  • Cursor平替免费软件开发工具使用感受和推荐
  • vim的一般操作(分屏操作) 和 Makefile 和 gdb
  • 从零到一开发一款 DeepSeek 聊天机器人
  • 【支持二次开发】基于YOLO系列的车辆行人检测 | 含完整源码、数据集、环境配置和训练教程
  • 程序算法基础
  • 思源配置阿里云 OSS 踩坑记
  • 寻找左边第一个更小值
  • RAG(Retrieval-Augmented Generation)基建之PDF解析的“魔法”与“陷阱”
  • 感知识别算法Jetson环境部署测试记录
  • 【AVRCP】深度剖析 AVRCP 中 Generic Access Profile 的要求与应用
  • RHCE 使用nginx搭建网站
  • Linux进程信号(下:补充)
  • 分布式任务调度框架XXl-job
  • 蓝桥杯备考:二分答案之路标设置
  • 大模型-提示词工程与架构
  • RK3588开发笔记-RTL8852wifi6模块驱动编译报错解决
  • Linux操作系统7- 线程同步与互斥4(基于POSIX条件变量的生产者消费者模型)
  • moveit2基础教程上手-使用xarm6演示
  • 【工具变量】中国各地级市是否属于“信息惠民国家试点城市”匹配数据(2010-2024年)
  • 『 C++ 』错误使用std::mutex引发的error C2039: “try_lock_until“: 不是 “std::mutex“ 的成员
  • vue3:十一、主页面布局(左侧菜单折叠展开设置)
  • vulnhub靶场之【hack-me-please靶机】
  • 微前端框架深度对比与技术实现剖析
  • Cursor的五种高级用法
  • 数智读书笔记系列022《算力网络-云网融合2.0时代的网络架构与关键技术》读书笔记
  • 权限维持—Linux系统Rootkit后门
  • 云原生之开源遥测框架OpenTelemetry(在 Gin 框架中使用 OpenTelemetry 进行分布式追踪和监控)
  • 软考通关利器:中级软件设计师结构化开发核心考点
  • UniRel论文复现过程中的问题解决办法(全)
  • 【C语言】字符串函数详解