feat: v0.1.9 - 全頁拖曳上傳 + i18n 修正 + 文件更新
✨ Features: - 全頁拖曳上傳:檔案可拖曳到頁面任何位置上傳 - 原本的上傳框視覺效果保持不變 🌍 i18n: - 刪除任務的 confirm/alert 訊息改用 i18n - 隨語言切換即時更新顯示內容 📚 Documentation: - README 新增「如何更新 ConvertX-CN 版本」章節 - 新增 deployment.md(Reverse Proxy、HTTPS) - 新增 Docker Compose 範例分層 - 更新 environment-variables.md
This commit is contained in:
parent
a0eccf0437
commit
a45a049fe2
14 changed files with 1475 additions and 167 deletions
87
docs/docker-compose/compose.production.yml
Normal file
87
docs/docker-compose/compose.production.yml
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
# ==============================================================================
|
||||
# ConvertX-CN 生產環境 Docker Compose
|
||||
#
|
||||
# 適用情境:
|
||||
# - 透過 Reverse Proxy(Nginx / 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"
|
||||
#
|
||||
# ==============================================================================
|
||||
Loading…
Add table
Add a link
Reference in a new issue