Docker Compose 部署(Windows)
其他操作系统
本教程适用于 Windows 10 / 11。Linux 或 macOS 用户请查看 👉 Docker Compose 部署(Linux / macOS)。
说在前面
本教程使用 PowerShell 和 Docker Desktop 部署 qData。Windows 下的 Compose 命令为 docker compose。
谁适合看这份指南?
- 在 Windows 10 / 11 上使用 Docker Desktop 部署 qData 的用户
- 熟悉 Docker Compose 基本命令的用户
- 需要手动选择 DM8/MySQL 或不同启动模式的用户
- 需要查看具体 Compose 命令进行运维或排障的用户
使用前请确认
- 本教程面向具备 Docker 和 Docker Compose 基础知识的使用者,需要能够看懂常用命令、容器状态和基本报错信息。
- 部署过程需要联网下载 Docker 镜像,请确保网络稳定。
- 中国大陆网络环境下,请提前为 Docker Desktop 配置可用的镜像加速地址。
Docker 镜像支持双架构
本部署包使用的 Docker 镜像同时支持 amd64(x86_64) 和 arm64 架构。拉取镜像时,Docker 会根据当前主机的 CPU 架构自动选择对应版本,无需手动切换镜像标签。
docker compose 与 docker-compose
docker compose是当前推荐的 Docker Compose V2 命令,Docker Desktop 已内置。docker-compose是独立安装的 Docker Compose V1 旧命令。- 本教程统一使用
docker compose。如果环境中只有docker-compose,可将教程中的docker compose替换为docker-compose,但建议升级到 Compose V2。
我们已经为你准备好“开箱即用”的完整部署包,包括:
- ✅ 前端静态资源(打包好的
dist文件夹) - ✅ DolphinScheduler 调度器(无需额外安装)
- ✅ Hadoop 全家桶(HDFS + YARN)
- ✅ Spark 3.5.6(已解压)
- ✅ 预设
.env环境变量文件 - ✅ 完整的目录结构与 Docker Compose 配置
解压部署包后,可以根据数据库类型和使用场景手动执行 Docker Compose 命令。
Docker 镜像中已安装 Python 3,Windows 宿主机无需单独安装 Python。
第 1 步:安装 Docker Desktop
下载并安装 Docker Desktop。安装完成后,Docker Compose 会自动包含在 Docker Desktop 中。
打开 PowerShell 验证安装:
docker --version
docker compose version推荐版本:
- Docker:≥ v20.10
- Docker Compose:≥ v2.20.2
第 2 步:下载部署包
🔗 百度网盘:https://pan.baidu.com/s/1sKgeBnMZmRnIr42_pVHmiw
🔑 提取码:加入 QQ 交流群后,在群文件中查看。👉 点此加入 QQ 交流群
下载后解压部署包,解压完成后会得到一个 docker 文件夹。
第 3 步:启动 qData
3.1 打开部署目录
- 在文件资源管理器中打开解压后的
docker文件夹。 - 确认目录中包含
.env和多个docker-compose*.yml文件。 - 在目录空白处右键单击,选择“在终端中打开”;也可以在资源管理器地址栏输入
powershell后回车。
后续命令均在该 PowerShell 窗口中执行。
3.2 选择数据库
默认使用 达梦数据库(DM8),使用 DM8 时无需修改 .env。
如果使用 MySQL:
- 在文件资源管理器中右键单击
.env。 - 选择记事本或其他文本编辑器打开。
- 将
DB_TYPE改为mysql并保存:
# 数据库类型,可选值:dm8 或 mysql
DB_TYPE=mysql3.3 初始化数据库(首次运行必做)
DM8 和 MySQL 只需执行对应的一条命令。
使用 DM8
docker compose --profile schema up -d使用 MySQL
docker compose -f docker-compose-mysql.yml --profile schema up -d3.4 启动 qData
根据使用场景选择轻量化模式或全量模式。
轻量化模式(light)
轻量化模式不启动 DolphinScheduler 和 Spark,适合快速部署和功能验证。
# DM8
docker compose --profile light up -d
# MySQL(使用 MySQL 时只执行这一条)
docker compose -f docker-compose-mysql.yml --profile light up -d全量模式(all)
全量模式会启动完整的依赖服务。
# DM8
docker compose --profile all up -d
# MySQL(使用 MySQL 时只执行这一条)
docker compose -f docker-compose-mysql.yml --profile all up -d3.5 启动演示数据(可选)
demo 模式独立于 all 模式,需要单独启动:
# DM8
docker compose --profile demo up -d
# MySQL(使用 MySQL 时只执行这一条)
docker compose -f docker-compose-mysql.yml --profile demo up -d3.6 为本地源码启动中间件
如果要在 Windows 宿主机上运行 qData 源码,只需启动 local 模式,无需执行 3.3 和 3.4:
docker compose --profile local up -d⚠️ MySQL 的
local模式暂未适配。
3.7 其他常用命令
以下命令以 all 模式为例。如果使用 light 或 demo 模式,请替换对应的 profile。
查看运行状态:
docker compose --profile all ps暂停所有服务(保留容器和数据):
docker compose --profile all stop重启所有服务:
docker compose --profile all restart停止并移除容器和网络:
docker compose --profile all down
docker compose --profile schema down如果使用 MySQL,请在
compose后添加-f docker-compose-mysql.yml。例如:docker compose -f docker-compose-mysql.yml --profile all ps。
第 4 步:访问 qData
部署完成后,可以通过以下地址访问:
- qData 数据中台:
http://localhost:80- 账号:
admin - 密码:
qData123
- 账号:
- DolphinScheduler:
http://localhost:12345/dolphinscheduler/ui/home- 账号:
admin - 密码:
dolphinscheduler123
- 账号:
DolphinScheduler 只在
all模式下启动。如果需要从其他设备访问,请将localhost替换为 Windows 主机 IP,并确认 Windows 防火墙已放行对应端口。
重要提醒
- 首次启动后请等待 1-2 分钟,让所有容器完成初始化。
- 可以使用
docker ps查看容器状态。 - 如果无法启动,请先确认 Docker Desktop 正在运行,并检查报错中的端口是否已被占用。
