diff --git a/auto-sync-cron.log b/auto-sync-cron.log index 66851d33..88151583 100644 --- a/auto-sync-cron.log +++ b/auto-sync-cron.log @@ -64351,3 +64351,4 @@ fatal: refusing to merge unrelated histories /bin/sh: ./management/sanguo_auto_sync/auto-sync.sh: No such file or directory /bin/sh: ./management/sanguo_auto_sync/auto-sync.sh: No such file or directory /bin/sh: ./management/sanguo_auto_sync/auto-sync.sh: No such file or directory +/bin/sh: ./management/sanguo_auto_sync/auto-sync.sh: No such file or directory diff --git a/logs/auto-sync.log b/logs/auto-sync.log index 6040469e..3a9569ab 100644 --- a/logs/auto-sync.log +++ b/logs/auto-sync.log @@ -133,5 +133,6 @@ + diff --git a/research/docker/automated-backtest-service-design.md b/research/docker/automated-backtest-service-design.md index f1b535a0..cd490a9f 100644 --- a/research/docker/automated-backtest-service-design.md +++ b/research/docker/automated-backtest-service-design.md @@ -242,3 +242,80 @@ nohup python main.py > backtest-service.log 2>&1 & **文档记录时间:** 2026-04-11 22:21 GMT+8 **记录人:** 姜维 伯约 **状态:** 设计完成,待实现 + +--- + +## 成功部署记录 - 2026-04-12 + +### 部署信息 +- **部署目标:** Synology NAS @ 192.168.2.154 +- **镜像名称:** `sanguo_vnpy:latest` +- **镜像ID:** `a77f153853b9` +- **容器ID:** `8fccf1eb15ae` +- **基础镜像:** `python:3.10-slim` + +### 成功部署的服务 + +| 服务 | 地址 | 状态 | 验证结果 | +|------|------|------|----------| +| Jupyter Lab | http://192.168.2.154:8888/lab?token=sanguo123 | ✅ 运行正常 | **已验证可访问** | +| SSH | `ssh vnpy@192.168.2.154 -p 2222` (密码: sanguo123) | ✅ 运行正常 | 已修复 hostkey 问题 | +| VNPY Web Trader | http://192.168.2.154:8000 | ⚪ 待手动启动 | 端口已映射 | +| code-server | http://192.168.2.154:8080 | ⚪ 待手动安装 | 配置已预生成 | +| VNPY RPC 请求 | 192.168.2.154:2018 | ✅ 端口就绪 | 已映射 | +| VNPY RPC 订阅 | 192.168.2.154:4102 | ✅ 端口就绪 | 已映射 | +| 自动化回测服务 | http://192.168.2.154:8088 | ✅ 端口就绪 | 已映射,预留 | + +### 关键修复 + +1. **openssh-server 配置文件缺失问题** + 问题:`openssh-server` 因依赖 systemd 安装报错,`/etc/ssh/sshd_config` 缺失 + 解决:在 Dockerfile 添加判断,如果配置文件不存在则生成默认配置 + +2. **sshd hostkey 缺失问题** + 问题:容器启动时 `sshd: no hostkeys available -- exiting` + 解决:容器启动后在容器内执行 `ssh-keygen -A` 生成 hostkeys,重启后正常 + +3. **code-server 网络安装失败问题** + 问题:GitHub 访问不稳定,二进制下载失败 + 解决:跳过预安装,保留配置,由用户启动容器后手动安装 + +### 容器启动命令 + +```bash +# 停止并删除旧容器 +echo "Ccf7561523" | sudo -S docker stop sanguo_vnpy +echo "Ccf7561523" | sudo -S docker rm sanguo_vnpy + +# 启动新容器 +echo "Ccf7561523" | sudo -S docker run -d \ + -p 8888:8888 \ + -p 8000:8000 \ + -p 8080:8080 \ + -p 8088:8088 \ + -p 2018:2018 \ + -p 4102:4102 \ + -p 2222:22 \ + --name sanguo_vnpy \ + sanguo_vnpy:latest +``` + +### 账号信息 + +| 账号 | 密码 | 用途 | +|------|------|------| +| vnpy (container) | sanguo123 | SSH 登录容器 | +| Jupyter token | sanguo123 | Jupyter Lab 访问 | +| code-server | sanguo123 | code-server 访问(预配置) | + +### 验证结果 +- ✅ Jupyter Lab 已验证可正常访问 +- ✅ 所有端口映射正确配置 +- ✅ SSH 已修复可正常连接 +- ✅ 完整 vnpy 开发环境已就绪 +- ✅ 所有依赖包安装成功 + +### 记录人 +姜维 伯约 +2026-04-12 09:29 GMT+8 +**状态:✅ 部署成功,Jupyter Lab 可访问**