先给你写一个标准通用的 docker-compose.yml 模板,再整理最常用的 docker-compose 命令,直接复制就能用。
一、通用 docker-compose.yml 示例
创建 docker-compose.yml 文件,以 Nginx + Redis 为例(你可以替换成自己的服务):
version: '3.8' # Compose 文件版本
services:
# Nginx 服务
nginx:
image: nginx:alpine # 使用轻量级镜像
container_name: my-nginx
ports:
- "80:80" # 端口映射 主机:容器
volumes:
- ./nginx/html:/usr/share/nginx/html # 目录挂载
restart: always # 开机自启
# Redis 服务
redis:
image: redis:alpine
container_name: my-redis
ports:
- "6379:6379"
restart: always
二、docker-compose 核心常用命令
必须在 docker-compose.yml 所在目录执行!
启动服务
# 前台启动(会打印日志,Ctrl+C 停止)
docker-compose up
# 后台守护进程启动(推荐,最常用)
docker-compose up -d
停止服务
# 停止所有服务(不删除容器)
docker-compose stop
# 停止并删除所有容器、网络
docker-compose down
查看服务状态
# 查看当前运行的服务
docker-compose ps
# 查看服务日志
docker-compose logs
# 实时查看日志(持续刷新)
docker-compose logs -f
重启服务
# 重启所有服务
docker-compose restart
# 重启单个服务(例如 nginx)
docker-compose restart nginx
构建 / 更新服务
# 重新构建镜像并启动
docker-compose up -d --build
# 拉取最新镜像
docker-compose pull
进入容器内部
# 进入 nginx 容器命令行
docker-compose exec nginx sh
# 进入 redis 容器命令行
docker-compose exec redis sh
其他实用命令
# 查看服务配置是否正确
docker-compose config
# 查看容器资源使用(CPU/内存)
docker-compose top
# 强制删除所有容器(慎用)
docker-compose down -v
三、最常用命令速记(直接背这几个)
# 启动(后台)
docker-compose up -d
# 停止
docker-compose stop
# 重启
docker-compose restart
# 查看日志
docker-compose logs -f
# 停止+删除容器
docker-compose down
总结
- 所有命令都要在
docker-compose.yml同级目录执行; up -d是日常启动首选,down是完全关闭;logs -f排查问题必用,exec进入容器调试。