convertor/docs/docker-compose/compose.production.yml
Your Name a45a049fe2 feat: v0.1.9 - 全頁拖曳上傳 + i18n 修正 + 文件更新
 Features:
- 全頁拖曳上傳:檔案可拖曳到頁面任何位置上傳
- 原本的上傳框視覺效果保持不變

🌍 i18n:
- 刪除任務的 confirm/alert 訊息改用 i18n
- 隨語言切換即時更新顯示內容

📚 Documentation:
- README 新增「如何更新 ConvertX-CN 版本」章節
- 新增 deployment.md(Reverse Proxy、HTTPS)
- 新增 Docker Compose 範例分層
- 更新 environment-variables.md
2026-01-20 15:09:30 +08:00

87 lines
2.7 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.

# ==============================================================================
# ConvertX-CN 生產環境 Docker Compose
#
# 適用情境:
# - 透過 Reverse ProxyNginx / Traefik / Caddy存取
# - 已設定 HTTPS
# - 需要限制註冊與存取
#
# ⚠️ 使用前請確認:
# 1. 已建立 data 資料夾
# 2. 已將 JWT_SECRET 改成你自己的值
# 3. 已設定好 Reverse Proxy
# ==============================================================================
services:
convertx:
image: convertx/convertx-cn:latest
container_name: convertx-cn
restart: unless-stopped
# 生產環境通常只監聽 localhost由 Reverse Proxy 轉發
# 若需要直接對外,改為 "3000:3000"
ports:
- "127.0.0.1:3000:3000"
volumes:
- ./data:/app/data
environment:
# === 必填設定 ===
# 🔐 JWT 密鑰:請務必改成你自己的隨機字串(至少 32 字元)
# 可用 openssl rand -hex 32 產生
- JWT_SECRET=change-me-to-a-very-long-random-string-at-least-32-characters
# === 安全設定 ===
# 關閉註冊(首次帳號仍可建立)
- ACCOUNT_REGISTRATION=false
# 不允許 HTTP要求 HTTPS
- HTTP_ALLOWED=false
# 信任 Reverse Proxy 的 X-Forwarded-* headers
- TRUST_PROXY=true
# 必須登入才能使用
- ALLOW_UNAUTHENTICATED=false
# === 時區與清理 ===
- TZ=Asia/Taipei
- AUTO_DELETE_EVERY_N_HOURS=24
# === 可選:子路徑部署 ===
# 若透過 https://example.com/convertx/ 存取,取消下行註解
# - WEBROOT=/convertx
# ==============================================================================
# Reverse Proxy 設定範例
# ==============================================================================
#
# Nginx 範例:
# -------------
# server {
# listen 443 ssl http2;
# server_name example.com;
#
# location / {
# proxy_pass http://127.0.0.1:3000;
# proxy_set_header Host $host;
# proxy_set_header X-Real-IP $remote_addr;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# proxy_set_header X-Forwarded-Proto $scheme;
#
# # 檔案上傳大小限制
# client_max_body_size 500M;
# }
# }
#
# Traefik 範例labels
# ------------------------
# labels:
# - "traefik.enable=true"
# - "traefik.http.routers.convertx.rule=Host(`convertx.example.com`)"
# - "traefik.http.routers.convertx.tls=true"
# - "traefik.http.routers.convertx.tls.certresolver=letsencrypt"
# - "traefik.http.services.convertx.loadbalancer.server.port=3000"
#
# ==============================================================================