Files
henan-backend/docker/WINDOWS_QUICKSTART.md
T
2026-09-21 19:21:35 +08:00

94 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Docker Windows 新手启动指南
本地 Windows 开发环境启动 MySQL / Redis / RabbitMQ 三个容器。
## 前置条件
- 已安装并启动 **Docker Desktop**(任务栏图标变绿才算启动完成)
## 首次启动(只做一次)
1. 创建 MySQL 数据卷:
```powershell
docker volume create changzhou_mysql_data
```
2. 启动容器(⚠️ 必须先 cd 到 compose 目录,且必须带两个 -f 参数):
```powershell
cd d:\changzhou_app\changzhou_backend\docker\compose
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d
```
> ⚠️ **不要只执行 `docker-compose up -d`**!
> 少了 `-f docker-compose.dev.yml` 会导致 Redis 容器找不到 redis.conf,
> 状态一直是 Restarting 无限重启。
> dev 覆盖文件负责把 `docker/config/redis/redis.dev.conf` 挂载进容器。
3. 验证:
```powershell
docker ps
# 三个容器都应为 Up 状态:mysql_db / redis_cache / rabbitmq_server
docker exec redis_cache redis-cli ping
# 返回 NOAUTH Authentication required. 是正常的(Redis 已启动且带密码)
```
## 端口对照表(宿主机 → 容器)
| 服务 | 本机地址 | 容器端口 | 账号信息 |
|------|---------|---------|---------|
| MySQL | 127.0.0.1:23306 | 3306 | root/123456,业务库 changzhou |
| Redis | 127.0.0.1:26379 | 6379 | 密码见 redis.dev.conf |
| RabbitMQ | 127.0.0.1:25672 | 5672 | skins/mk,vhost /skins |
| RabbitMQ 管理台 | http://127.0.0.1:35672 | 15672 | skins/mk |
## 日常操作
```powershell
# 都在 docker\compose 目录下执行
cd d:\changzhou_app\changzhou_backend\docker\compose
# 启动
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d
# 停止
docker-compose -f docker-compose.yml -f docker-compose.dev.yml stop
# 查看状态
docker ps
# 查看某个容器日志
docker logs redis_cache --tail 50
# 重建某个容器(比如改了配置)
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d --force-recreate redis
```
## 常见问题
### 1. Redis 一直 Restarting
启动命令少了 `-f docker-compose.dev.yml`,重建即可:
```powershell
cd d:\changzhou_app\changzhou_backend\docker\compose
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d --force-recreate redis
```
### 2. 提示 `external volume "changzhou_mysql_data" not found`
```powershell
docker volume create changzhou_mysql_data
```
### 3. 提示 `cannot find the file specified`
没有 cd 到 `docker\compose` 目录就执行了命令,`-f` 的相对路径按当前目录解析。
### 4. 和 chengdu 项目切换
端口可能冲突,先到另一个项目的 compose 目录执行 `docker-compose stop`,再启动本项目。