Files
tick-stock-panel/backend/app/plugins/stocksdk/plugin.yaml
T
wshyandshy3130 3656fedc62 fix(docker): 镜像内置 stock-sdk 插件依赖(Node + node_modules) (#59)
Docker 运行时镜像(python:3.11-slim)既无 node 也无 node_modules,
导致 stock-sdk 插件 availability() 恒返回 false, 用户反馈打成 docker 后无法安装。

多阶段构建:
- 新增 stocksdk-builder 阶段(node:20-bookworm-slim)npm ci 装依赖
- runtime 阶段 apt 装 nodejs(满足 engines>=18, 自带全部动态依赖)
- COPY --from 将 vendored node_modules 拷到与 bridge.mjs 同目录
  (/app/app/plugins/stocksdk/node_modules), 命中 bridge.mjs loadSDK() 第一候选路径

用户 docker pull 后开箱即用, 无需进容器手动 npm install。
同步更新 plugin.yaml install_hint 文案与相关文档。

Co-authored-by: shy3130 <shy3130@users.noreply.github.com>
2026-07-06 22:26:43 +08:00

14 lines
737 B
YAML

# stock-sdk 内置可选数据源插件
# 基于 stock-sdk (Node.js) 的免费 A 股行情, 无需 API Key。
# Docker 部署已内置 Node 运行时与本插件依赖, 开箱即用;
# 开发模式下需手动安装依赖: cd backend/app/plugins/stocksdk && npm install
name: stocksdk
display_name: "stock-sdk(免费行情)"
runtime: node
entry: app.plugins.stocksdk.provider:StockSDKProvider
check: app.plugins.stocksdk.bridge:availability
datasets: [daily, adj_factor, minute, realtime]
description: "基于 stock-sdk 的免费 A 股行情, 无需 API Key。日K/除权/分钟/实时全市场。需运行环境含 Node.js 18+。"
install_hint: "cd backend/app/plugins/stocksdk && npm install(开发模式;Docker 部署已内置)"