# dts **Repository Path**: adif0028/dts ## Basic Information - **Project Name**: dts - **Description**: 自用dts平替,目前可以迁移mysql。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-23 - **Last Updated**: 2025-10-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README const dtsPlusReadme = `# DTS-Plus 数据迁移同步平台 DTS-Plus 是一款轻量级、自研自用的异构数据库迁移与同步工具,支持 MySQL、Redis、MongoDB 的结构迁移、全量/增量数据迁移与实时同步。 ## 技术栈 - **前端**:Vue 3 + TypeScript + Vite - **UI 库**:Element Plus - **状态管理**:Pinia - **后端**:Python 3.8 - **Web 框架**:FastAPI - **任务调度**:Celery + Redis Broker - **数据存储**:SQLite 3.30+ - **缓存**:Redis 6+ - **部署**:Docker ## 项目结构 \`\`\` dts-project/ ├── dts-frontend/ # 前端项目 ├── dts-backend/ # 后端API服务 ├── dts-worker/ # Celery任务处理模块 ├── docs/ # 文档 ├── deploy/ # 部署文件 └── README.md \`\`\` ## 系统架构 DTS-Plus 采用前后端分离架构,后端使用 FastAPI 提供 RESTful API,前端使用 Vue 3 + Element Plus 构建用户界面,任务调度使用 Celery + Redis Broker,数据存储使用 SQLite,缓存使用 Redis。 ## 运行步骤 参考DEPLOYMENT.md https://gitee.com/adif0028/dts/blob/master/DEPLOYMENT.md ## 部署 使用 Docker 部署: \`\`\`yaml # deploy/docker-compose.yml version: '3.8' services: backend: build: ./dts-backend ports: - "8000:8000" environment: - DATABASE_URL=sqlite:///./dts.db volumes: - ./dts-backend:/app command: uvicorn main:app --host 0.0.0.0 --port 8000 worker: build: ./dts-worker environment: - DATABASE_URL=sqlite:///./dts.db volumes: - ./dts-worker:/app command: celery -A worker.app worker --loglevel=info frontend: build: ./dts-frontend ports: - "3000:3000" volumes: - ./dts-frontend:/app command: npm run dev redis: image: redis:6 ports: - "6379:6379" \`\`\` ## 环境变量 \`\`\`env # .env DATABASE_URL=sqlite:///./dts.db REDIS_HOST=redis REDIS_PORT=6379 \`\`\` ## 前端构建 前端使用 Vite 构建,支持开发服务器和静态资源构建。 ### 开发模式 \`\`\`bash npm run dev \`\`\` ### 构建生产环境 \`\`\`bash npm run build \`\`\` ### 预览生产环境构建 \`\`\`bash npm run preview \`\`\` ## 后端 Dockerfile \`\`\`dockerfile # dts-backend/Dockerfile FROM python:3.8-slim COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] \`\`\` ## 版权与许可 本项目采用 MIT 许可协议,详细信息请查看项目根目录下的 LICENSE 文件。