整理 《Docker Compose 最常用命令 + 关键概念 + 常用 compose.yml 模板》表格形式
这是 Docker Compose 的“新手 → 熟练者”最实用合集,可直接复制使用。


🚀 一、Docker Compose 命令全表(最常用 + 场景化)

命令语法核心功能常用参数说明示例场景(可复制)
docker compose up创建并启动所有服务-d 后台运行
--build 构建镜像
启动所有服务(后台)
docker compose up -d
docker compose down停止并删除容器、网络--volumes 删除卷停止并清理:
docker compose down
docker compose build构建 compose 中定义的镜像--no-cache 不使用缓存重新构建镜像:
docker compose build
docker compose ps查看 compose 管理的容器docker compose ps
docker compose logs查看所有服务日志-f 持续输出实时查看日志:
docker compose logs -f
docker compose restart重启所有服务可指定服务名重启后端服务:
docker compose restart api
docker compose exec SERVICE bash进入容器终端进入后端:
docker compose exec api bash
docker compose stop停止服务但不删除容器停止所有服务:
docker compose stop
docker compose start启动已创建的服务重启所有服务:
docker compose start

🚀 二、Docker Compose 的核心概念(必懂)

名称意义场景解释
services定义容器(Nginx、Node 等)多服务部署
image使用的镜像拉取或构建
build构建镜像的目录Node 项目
ports端口映射80:80
volumes挂载文件持久化数据
environment环境变量传递配置
depends_on启动顺序Web → API → DB
networks定义网络服务互联

🚀 三、最常用的 Compose 模板(可直接复制)

⭐ 1. Node + Nginx + Redis(前后端分离)

version: '3'

services:
  frontend:
    image: nginx
    ports:
      - "80:80"
    volumes:
      - ./dist:/usr/share/nginx/html
      - ./nginx.conf:/etc/nginx/nginx.conf
    depends_on:
      - api

  api:
    build: ./server
    ports:
      - "3000:3000"
    environment:
      - NODE_ENV=production
    depends_on:
      - redis

  redis:
    image: redis:latest
    ports:
      - "6379:6379"
    volumes:
      - redis-data:/data

volumes:
  redis-data:

⭐ 2. MySQL + Adminer(后端常用)

version: '3'

services:
  mysql:
    image: mysql:8
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: root
    volumes:
      - mysql-data:/var/lib/mysql

  adminer:
    image: adminer
    ports:
      - "8080:8080"
    depends_on:
      - mysql

volumes:
  mysql-data:

⭐ 3. 生产环境:前端(Vue/React)+ 后端(Node)+ 反向代理(Nginx)

version: '3'

services:
  web:
    image: nginx
    ports:
      - "80:80"
    volumes:
      - ./frontend/dist:/usr/share/nginx/html
      - ./nginx.conf:/etc/nginx/nginx.conf
    depends_on:
      - api

  api:
    build: ./backend
    ports:
      - "3000:3000"
    environment:
      - NODE_ENV=production

networks:
  default:
    driver: bridge

🚀 四、最常用 Compose 操作流(直接复制用)

📌 启动所有服务(后台)

docker compose up -d

📌 重新构建 + 启动

docker compose up -d --build

📌 停止所有服务

docker compose stop

📌 停止并删除容器 + 网络

docker compose down

📌 删除所有并移除卷(非常干净)

docker compose down --volumes

📌 查看日志(所有服务)

docker compose logs -f

📌 进入 api 容器

docker compose exec api bash

🚀 五、精简记忆版(10 条即可掌握 Compose)

docker compose up -d
docker compose up -d --build
docker compose down
docker compose down --volumes
docker compose ps
docker compose logs -f
docker compose restart
docker compose exec service bash
docker compose stop
docker compose start

更多推荐