Phase 1-3: AList stock deployment, NocoDB 7-table schema, W1/W2 n8n workflows + docs
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
# =============================================================================
|
||||
# AList Serve Resource — 客户文件交付系统(Phase 1:AList stock 部署)
|
||||
# =============================================================================
|
||||
# 这是替代旧自定义 alist(access.hoelee.com, xhofe/alist:v3.54.0 + custom.js)
|
||||
# 的全新 stock AList。业务权限逻辑由 NocoDB(SOT) + n8n(同步器) 通过 AList
|
||||
# 官方 Admin API 管理,绝不在 image 内嵌入 custom code(规格 §8/§55)。
|
||||
#
|
||||
# 官方 Role/User 管理 API 已源码级验证(v3.63.0):
|
||||
# GET/POST /api/admin/role/{list,get,create,update,delete}
|
||||
# GET/POST /api/admin/user/{list,get,create,update,delete,cancel_2fa}
|
||||
# role 字段 = role-ID 数组;read-only = permission bitmask 0;
|
||||
# Check path limit = bit 14 = 16384(见 docs/API_INTEGRATION.md)
|
||||
# =============================================================================
|
||||
|
||||
services:
|
||||
alist:
|
||||
# 固定版本 tag,不追 latest(规格 §48)。部署前确认 v3.63.0 为主要最新稳定版。
|
||||
image: xhofe/alist:v3.63.0
|
||||
container_name: alist-serve-resource
|
||||
restart: unless-stopped
|
||||
|
||||
# 仅暴露 DSM 内网端口。公网入口由 DSM nginx 反代 access.hoelee.com → 此端口。
|
||||
# 旧 alist 用 5244/5245/5246(nginx-limit/traefik-update 链),新服务独立端口避免冲突。
|
||||
ports:
|
||||
- "5247:5244" # host:5247 -> container:5244(AList 默认端口)
|
||||
|
||||
volumes:
|
||||
# AList 自身数据/数据库/config(独立目录,不碰旧 alist 的 /volume1/docker/alist)
|
||||
- /volume1/docker/alist-serve-resource/data:/opt/alist/data
|
||||
- /volume1/docker/alist-serve-resource/config:/opt/alist/config
|
||||
- /volume1/docker/alist-serve-resource/storage:/opt/alist/storage
|
||||
|
||||
# 只读挂载 NAS 真实文件目录 —— 客户只能读取,不能改动(规格 §15/§16)。
|
||||
# 第二层防护:即使 AList 权限配置出错,filesystem 层仍只读。
|
||||
- /volume1/Class:/mnt/Class:ro
|
||||
- /volume1/Book:/mnt/Book:ro
|
||||
- /volume1/Comic:/mnt/Comic:ro
|
||||
- /volume1/Template:/mnt/Template:ro
|
||||
|
||||
environment:
|
||||
- TZ=Asia/Kuala_Lumpur
|
||||
# 生产部署请从 .env 注入真实值,勿硬编码(规格 §29/§55)。见 .env.example。
|
||||
- JWT_SECRET=${JWT_SECRET}
|
||||
- JWT_EXPIRE=2h
|
||||
# 注意:不再注入 ALIST_CUSTOM_CSS / ALIST_CUSTOM_JS —— 全新 stock 配置。
|
||||
|
||||
# 健康检查:AList 无内建 /health,用 /ping 探测 HTTP 存活
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:5244/ping >/dev/null 2>&1 || exit 1"]
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
start_period: 15s
|
||||
|
||||
networks:
|
||||
- bridge_hoelee
|
||||
|
||||
networks:
|
||||
# 复用 DSM 上已存在的外部网络(与 n8n / nocodb 同网络,便于内网 API 互访)
|
||||
bridge_hoelee:
|
||||
external: true
|
||||
Reference in New Issue
Block a user