Files
Commilitia-Drop/docker/compose.snippet.yaml
T

53 lines
3.1 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# cdrop 在你的 docker-compose.yaml 中的服务条目片段。
# NN 由你决定(与既有服务区分的编号 / 名称);your-proxy-network 换成你的反代所在网络。
#
# 不显式 ports —— 走内部网络,反代(如 Caddy)通过 NN-cdrop:8080 访问。
# 持久化挂一个目录到 /data,里面只有 cdrop.dbSQLite WAL)。
NN-cdrop:
image: cdrop:latest
container_name: NN-cdrop
restart: unless-stopped
networks: [your-proxy-network]
ports: []
volumes:
- ./NN-cdrop/data:/data
environment:
# M13 首轮 dev 模式(验证 Caddy / H3 管道),稳定后切 prod 见下方注释
CDROP_AUTH_MODE: dev
CDROP_DEV_TOKEN: REPLACE_WITH_RANDOM_HEX64
CDROP_DB_PATH: /data/cdrop.db
CDROP_LISTEN: ":8080"
CDROP_DEVICE_TTL_HOURS: "196"
# ---- prod 切换时启用以下,并把 CDROP_AUTH_MODE 改成 prod、删掉 DEV_TOKEN ----
# cdrop 委托 Auth Broker(路径 A):身份与会话生命周期归 broker,cdrop 不存凭证。
# broker 内网地址(docker 内网直连,绝不经公网反代)。prod 强制非空。
# CDROP_BROKER_BASE_URL: http://broker-internal-ip:8080
# broker /internal/* 共享密钥(X-Internal-Key)。prod 强制非空,向运维取。
# CDROP_BROKER_INTERNAL_KEY: REPLACE_WITH_BROKER_INTERNAL_KEY
# broker 公开源(浏览器全局 SSO 登录跳转 / 原生设备授权流目标)。
# CDROP_BROKER_PUBLIC_URL: https://sso.your-domain.example
# 本应用在 broker apps 注册表里的 key(默认 commilitia-drop)。
# CDROP_BROKER_APP: commilitia-drop
# 部署公开源(扫码 QR 链接 / CSRF Origin / Web Push 默认联系标识)。
# CDROP_PUBLIC_URL: https://drop.your-domain.example
# ---- 可选:Web Push(VAPID)推送通知(不配则推送惰性关闭)----
# 用 `just vapid-keygen` 生成一对,二者须同时设置(半对即拒启动)
# CDROP_VAPID_PUBLIC_KEY: <just vapid-keygen 输出>
# CDROP_VAPID_PRIVATE_KEY: <just vapid-keygen 输出>
# ---- 可选:扫码登录(QR)+ 按档令牌 TTL(批准后经 broker 委托签发对应 tier----
# 均有默认值;下列按需覆盖。关 QR_LOGIN_ENABLED 则 /api/auth/qr/* 返回 503。
# CDROP_QR_LOGIN_ENABLED: "true"
# CDROP_QR_REQUEST_TTL_SECONDS: "120" # 二维码 / 登录请求有效期
# CDROP_FULL_ACCESS_TTL_SECONDS: "900" # full 设备 access TTL
# CDROP_FULL_REFRESH_TTL_SECONDS: "604800" # full 设备 refresh TTL7 天)
# CDROP_GUEST_ACCESS_TTL_SECONDS: "900" # guest 访客 access TTL
# CDROP_GUEST_REFRESH_TTL_SECONDS: "86400" # guest refresh TTL1 天)
# ---- 可选:Cloudflare Realtime TURN over TLS(不配则前端 STUN-only 兜底)----
# CDROP_CF_TURN_KEY_ID: <dash.cloudflare.com → Realtime → TURN App>
# CDROP_CF_TURN_API_TOKEN: <同 App 派发的 API Token>