DataMover Docker 一键部署:5 分钟启动企业级数据同步平台
使用 Docker 一键部署 DataMover,无需手动配置 JDK 和环境变量,一行命令即可启动完整的数据迁移同步平台。
一、为什么选择 Docker 部署?
相比传统手动部署方式,Docker 部署 DataMover 具有以下优势:
| 对比项 | 传统部署 | Docker 部署 |
|---|---|---|
| 前置依赖 | 需安装 JDK 8+、配置环境变量 | 仅需 Docker 环境 |
| 部署耗时 | 10-15 分钟(下载 + 配置) | 3-5 分钟(自动完成) |
| 升级维护 | 手动替换文件、配置参数 | 重新执行脚本,自动拉取新镜像 |
| 多 Worker 扩展 | 需重复安装配置 | 复制服务配置即可 |
| 环境一致性 | 依赖操作系统版本 | 容器封装,环境一致 |
二、环境要求
| 组件 | 版本要求 |
|---|---|
| Docker Engine | 20.10+ |
| Docker Compose | 2.x+(即 docker compose 命令) |
Docker 部署脚本会自动从**阿里云 ACR(国内镜像仓库)**拉取镜像,无需额外配置镜像加速器或代理。
如果服务器没有 Docker 环境,可以寻求 AI 指导安装,或参考 Docker 官方安装文档。
三、一键安装(推荐)
macOS / Linux
curl -fsSL https://down.datamover.cn/install.sh | bash
Windows PowerShell
Set-ExecutionPolicy Bypass -Scope Process -Force; irm https://down.datamover.cn/install.ps1 | iex
安装脚本会自动完成以下步骤:
- 检测 Docker 和 Docker Compose 环境
- 下载
datamover-docker.zip压缩包 - 解压到当前目录
- 从阿里云 ACR 拉取 Manager 和 Worker 镜像
- 启动所有服务(MySQL + Manager + Worker)
首次启动需要 3-5 分钟完成 MySQL 初始化和 Flyway 自动建表,请耐心等待。
四、手动部署
如果需要审查部署包内容,也可以手动下载部署。
4.1 下载压缩包
wget https://down.datamover.cn/datamover-docker.zip
# 或直接在浏览器访问上面的地址下载
4.2 解压
unzip datamover-docker.zip
cd datamover-docker
解压后的目录结构:
datamover-docker/
├── docker-compose.yml
├── deploy.sh # Linux 部署脚本
├── deploy.ps1 # Windows 部署脚本
├── .env # 环境配置
├── 使用说明.md
└── mysql/
└── init/
└── 01-grant-privileges.sql
4.3 (可选)修改配置
编辑 .env 文件,按需修改数据库密码:
DM_DB_PASSWORD=你的密码
不修改则使用默认密码
Dm@2024#Secure!。
4.4 启动服务
# Linux
chmod +x deploy.sh
./deploy.sh
# Windows PowerShell
.\deploy.ps1
部署脚本会自动检测端口冲突,如果 3306/8000/8011 被占用,会自动更换为可用端口,并在启动完成后告知实际地址。
查看启动日志:
docker compose logs -f
五、访问 DataMover 管理界面
启动完成后,浏览器访问:
| 服务 | 地址 |
|---|---|
| Manager Web 界面 | http://服务器IP:8000 |
| Worker 接口 | http://服务器IP:8011 |
默认管理员账号:
- 用户名:
admin - 密码:
admin123
登录后即可开始配置数据源和创建同步任务,具体操作请参考 DataMover 快速部署教程。
六、常用运维命令
查看日志
# 查看所有服务日志
docker compose logs -f
# 查看指定服务日志
docker compose logs -f manager
docker compose logs -f worker
启停控制
# Linux
./deploy.sh --stop # 停止所有服务
./deploy.sh --stop worker # 仅停止 Worker
./deploy.sh --restart # 重启所有服务
./deploy.sh --down # 停止并删除容器(数据不丢失)
# Windows PowerShell
.\deploy.ps1 -Action Stop
.\deploy.ps1 -Action Restart
.\deploy.ps1 -Action Down
升级
重新下载最新压缩包,解压后执行部署脚本即可自动拉取最新镜像并重新部署:
./deploy.sh
多 Worker 扩展
在 docker-compose.yml 中添加 Worker 服务配置:
worker-2:
image: datamover-worker:latest
container_name: datamover-worker-2
environment:
DM_LOCAL_IP: worker-2
DM_NODE_ID: <新的唯一UUID>
DM_DB_PASSWORD: ${DM_DB_PASSWORD}
七、配置参考
Docker 部署的所有配置通过环境变量注入,可在 .env 文件中修改:
| 变量 | 默认值 | 说明 |
|---|---|---|
TZ | Asia/Shanghai | 容器时区 |
DM_DB_PASSWORD | Dm@2024#Secure! | MySQL 用户密码 |
DM_LOCAL_IP | 自动检测 | 本机注册 IP(多网卡环境需手动指定) |
DM_WEB_PORT | 8000 | Manager 端口 |
JAVA_OPTS | 空 | 额外 JVM 参数 |
调整 JVM 内存
在 .env 文件中设置:
JAVA_OPTS=-Xms512m -Xmx2g
修改端口映射
编辑 docker-compose.yml 中的 ports 配置:
ports:
- "3307:3306" # MySQL
- "8001:8000" # Manager
- "8012:8011" # Worker
数据持久化
MySQL 数据存储在 Docker 命名卷 datamover_mysql-data 中,docker compose down 不会丢失数据。
如需彻底清理(谨慎操作):
docker compose down -v
八、常见问题
8.1 端口冲突怎么办?
部署脚本会自动检测 3306/8000/8011 是否被占用,并更换为可用端口。也可以手动修改 docker-compose.yml 中的端口映射。
8.2 镜像拉取失败?
确认服务器可访问公网。如果在内网环境,需要在一台公网机器上执行 ./deploy.sh --pull 拉取镜像并导出,再拷贝到内网机器导入。
8.3 如何查看 Worker 是否注册成功?
登录管理界面,进入 节点管理 查看 Worker 状态。如果显示在线,说明注册成功。
8.4 Docker 部署的资源占用如何?
| 服务 | 最低配置 | 推荐配置 |
|---|---|---|
| Manager | 1 核 / 1 GB | 2 核 / 2 GB |
| Worker | 2 核 / 2 GB | 4 核 / 4 GB |
| MySQL | 1 核 / 1 GB | 2 核 / 2 GB |
社区版免费,支持 3 个同步任务和 1 个执行节点,满足个人开发者和创业团队需求。
九、下一步
- 查看完整文档:https://datamover.cn/doc/
- 下载社区版:https://datamover.cn/download.html
- 电话咨询:18032410846
现在就用 Docker 一键部署 DataMover,5 分钟开启你的数据同步之旅!
相关同步方案
除了数据迁移同步解决方案,DataMover还支持以下场景:
常见问题解答
数据迁移是否支持全量和增量?
DataMover的普通任务支持全量一次性同步和基于字段的增量同步。
增量同步和实时同步有什么区别?
增量同步延迟分钟级,实时同步(CDC)可达秒级延迟,能捕获所有数据变更。
CDC同步对源数据库性能影响多大?
采用无锁读取方式,对源库性能影响极小。
免费社区版能同步多少数据?
免费社区版不限制数据量,限制3个同步任务和1个执行节点。
开始你的第一次数据同步
5分钟部署,永久免费社区版