Docker Compose 最常用命令
·
整理 《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
更多推荐
所有评论(0)