# Shinkansen RSS Translator — 獨立部署用 compose。 # 要併入現有 Miniflux 網路時,疊加 docker-compose.miniflux.yml(見 README)。 name: shinkansen-rss-translator services: app: build: . image: shinkansen-rss-translator container_name: shinkansen-rss restart: unless-stopped # 公用 DNS:afu(Windows Docker)容器內解析不穩的既有修正,2026-08-03 從 afu # 本地修改收編進 repo(全 stack 各 compose 同款),消除組態飄移 dns: - 8.8.8.8 - 1.1.1.1 # 只綁 127.0.0.1(對外靠 Tailscale Serve,不直接暴露) ports: - "127.0.0.1:${WEB_PORT:-8448}:8088" env_file: .env environment: - DB_PATH=/app/data/shinkansen-feed.sqlite # 用量「每日」彙總以伺服器本地時區切日;容器預設 UTC 會讓台北早上 8 點前的 # 用量被算進前一天,圖表與直覺對不上 - TZ=Asia/Taipei # Let's Encrypt 新根 ISRG Root YR(2025-09 簽發)尚未進 Node 內建信任清單, # 來源站換用該憑證鏈時抓取會 TLS 失敗(latepost 事故,2026-08-03 預防性補上)。 # Node 信任清單收錄後可移除 env + volume 與 deploy/extra-ca.pem。 - NODE_EXTRA_CA_CERTS=/app/extra-ca.pem volumes: - ./data:/app/data - ./deploy/extra-ca.pem:/app/extra-ca.pem:ro # 容器 stdout log 輪替(pino 每請求都寫,不設上限會吃磁碟) logging: driver: json-file options: max-size: "10m" max-file: "3"