← 返回部落格

方案一:VPS 手動部署

SillyTavern 本質是 Node.js 前端服務,負責管理角色卡、聊天記錄、預設與後端 API 連線。部署方式取決於三件事:是否要 7×24 線上、是否有公網存取需求,以及你打算跑多少張角色卡與多長的上下文。

發布於
  • sillytavern
  • deployment
  • docker
  • vps
  • self-hosting
  • tutorial

部署前的架構選擇

SillyTavern 本質是一個 Node.js 前端服務,負責管理角色卡、聊天記錄、預設與後端 API 連線。部署方式的選擇取決於三件事:是否要 7×24 線上、是否有公網存取需求、以及你打算跑多少張角色卡與多長的上下文。

方案適用場景優點代價
家用伺服器 / NAS單人使用、以區域網路為主資料完全自持、硬體成本低需處理內網穿透與憑證
VPS需公網存取、多裝置同步獨立 IP、部署乾淨月費、需自行加固
Docker任意環境、追求可重現升級回滾簡單、隔離相依套件需理解磁碟區掛載

無論哪種方案,請把 data/ 目錄視為核心資產——角色卡(PNG/JSON)、聊天歷史、settings.json 全在裡面。備份策略應圍繞這個目錄設計。

適合想理解運作細節的使用者。以 Ubuntu 22.04/24.04 為例。

基礎環境

  • 安裝 Node.js 20 LTS 或更高版本(SillyTavern 對 Node 版本有明確下限,升級前先看 release notes)。
  • 安裝 git、build-essential,部分相依套件需要編譯。
  • 建立獨立系統使用者,不要用 root 跑服務。

拉取與啟動

git clone https://github.com/SillyTavern/SillyTavern.git
cd SillyTavern
npm install
node server.js

首次啟動會產生 config.yaml。關鍵項:

  • listen: true 與 listenAddress:預設只監聽本機,公網存取需明確開啟。
  • whitelistMode:開啟後只允許白名單 IP,公網部署建議保持開啟。
  • basicAuthMode:至少設定一組使用者名稱密碼,不要裸奔。

反向代理與 HTTPS

用 Nginx 或 Caddy 反向代理到 localhost:8000。Caddy 自動簽發憑證,設定量最小。反向代理時注意開啟 WebSocket 支援,否則串流輸出會失效。

行程守護

用 systemd 或 pm2 保證崩潰後自動拉起,並設定開機自啟。日誌重新導向到檔案,便於排查 API 連線失敗。

方案二:Docker 部署

推薦給需要頻繁升級或跑多個執行個體的使用者。

最小 compose 設定

services:
  sillytavern:
    image: ghcr.io/sillytavern/sillytavern:latest
    ports:
      - "8000:8000"
    volumes:
      - ./config:/home/node/app/config
      - ./data:/home/node/app/data
    restart: unless-stopped

要點:

  • 必須掛載 config 與 data 兩個磁碟區,否則容器重建即遺失全部角色卡與聊天記錄。
  • 映像檔內路徑為 /home/node/app,掛載點寫錯會導致設定不生效且無錯誤訊息。
  • 升級用 docker compose pull && docker compose up -d,回滾則鎖定具體 tag。

權限與網路

  • 主機目錄擁有者需與容器內 UID 相符,否則寫入角色卡時會無聲失敗。
  • 建議把容器放進獨立 bridge 網路,僅暴露反向代理所需連接埠。

方案三:家用伺服器 / NAS

適合已有常開裝置的使用者,重點在內網穿透而非部署本身。

  • 部署流程與 VPS 一致,可用 Docker 簡化。
  • 公網存取優先使用 Tailscale 等組網工具,避免直接連接埠對應。
  • 若必須暴露公網,務必啟用 basicAuthMode 與 whitelistMode,並設定 HTTPS。
  • NAS 上注意 Docker 磁碟區落在哪顆磁碟——機械碟上大量小檔案讀寫會拖慢角色卡載入。

角色卡與資料工作流程

部署完成後,日常操作集中在資料層:

  • 角色卡以 PNG(內嵌中繼資料)或 JSON 匯入,統一放進 data/default-user/characters。
  • 聊天記錄按角色分目錄存放,遷移時整目錄複製即可。
  • 預設、世界書、快速回覆分別位於 data/default-user 下的對應子目錄。
  • 跨裝置同步建議用 Git 或 Syncthing 管理 data/,但排除日誌與暫存檔。

需要跨平台管理卡片與聊天時,可以在 iOS/Android 用戶端或 Chrome 擴充功能中接入同一套後端,角色卡市場也能直接匯入現成卡片——例如以雲碼頭港務長 Captain Portia Vane 為代表的成品卡,匯入後即可進入對話,省去手動整理中繼資料的步驟。

常見故障排查

  • 頁面能開但無串流輸出:反向代理未轉發 WebSocket。
  • 容器重新啟動後設定遺失:config 磁碟區未掛載。
  • 角色卡匯入失敗:PNG 中繼資料格式不符,或目錄權限不足。
  • API 連線逾時:容器內 localhost 指向容器自身,需改用主機位址或服務名稱。

結語

三種方案的核心差異只在維運成本,資料層完全一致。選定方案後,把備份與升級流程固定下來,比反覆更換部署方式更有價值。若希望減少自建環節,可透過 MiniTavern 的行動裝置應用程式與 Chrome 擴充功能直接連接既有 SillyTavern 後端,並在角色卡市場挑選成品卡快速開始。

你可能還會喜歡這些文章

為什麼在 2026 年仍推薦本地生成角色卡立繪

角色卡的核心是文本,但立繪決定點擊率。雲端繪圖服務在 2026 年依然面臨訂閱成本、內容審核、角色一致性難以跨工作階段保持等問題。ComfyUI 配合 Stable Diffusion 把這些事全交回本地:模型權重在你硬碟上,工作流可重複使用,同一角色的臉能透過固定 seed 與 LoRA 穩定重現。

  • comfyui
  • local-image-generation
  • character-card-art
  • sillytavern
閱讀全文

2026年SillyTavern角色卡與Google Gemini深度整合指南:從配置到優化

在AI角色扮演領域,SillyTavern憑藉其強大的自訂功能與開放生態,始終佔據核心地位。而Google Gemini模型憑藉多模態理解與長上下文處理能力,正成為2026年最受矚目的角色扮演引擎之一。本文將手把手教你如何將SillyTavern角色卡與Google Gemini完美結合,並分享一套經過驗證的優化策略。

  • sillytavern
  • google gemini
  • character cards
  • setup guide
閱讀全文