這是一個用於快速部署 Wiki.js 服務的 Docker Compose 專案。Wiki.js 是一個現代化、輕量級且功能強大的 wiki 軟體。
- Docker Engine (已測試版本: 28.3.2+)
- Docker Compose (已測試版本: 2.38.2+)
- 系統需求: Linux 建議 4GB+ RAM
git clone <repository-url>
cd Wiki
# 複製環境變數範例檔案
cp .env.example .env
# 編輯 .env 檔案,設定以下項目:
# - POSTGRES_PASSWORD: 資料庫密碼 (建議使用強密碼)
# - WIKI_PORT: Wiki 服務埠號 (預設: 3000)
# 啟動所有服務 (背景執行)
docker compose up -d
# 檢查服務狀態
docker compose ps
- 開啟瀏覽器,前往
http://localhost:3000
(或您設定的埠號) - 按照 Wiki.js 安裝精靈完成初始設定
- 選擇 PostgreSQL 資料庫
- 資料庫主機:
db
- 資料庫名稱:
wiki
- 使用者名稱:
wikijs
- 密碼: 您在
.env
中設定的密碼
Wiki/
├── docker-compose.yml # Docker 服務定義
├── .env # 環境變數配置
├── .env.example # 環境變數範例
├── data/ # 資料持久化目錄
│ ├── db/ # PostgreSQL 資料庫檔案
│ └── wiki/ # Wiki.js 配置和上傳檔案
├── scripts/ # 管理腳本
│ ├── backup.sh # 資料備份腳本
│ └── restore.sh # 資料還原腳本
└── README.md # 專案說明文件
# 啟動服務
docker compose up -d
# 停止服務
docker compose down
# 重啟服務
docker compose restart
# 查看服務狀態
docker compose ps
# 查看服務日誌
docker compose logs -f wiki
docker compose logs -f db
# 進入 PostgreSQL 容器
docker compose exec db bash
# 進入 Wiki.js 容器
docker compose exec wiki sh
# 查看資料庫
docker compose exec db psql -U wikijs -d wiki
# 執行完整備份 (資料庫 + 上傳檔案)
./scripts/backup.sh
# 備份檔案會儲存在 data/backups/ 目錄下
# 1. 編輯 scripts/restore.sh,設定 BACKUP_DIR 路徑
# 2. 執行還原
./scripts/restore.sh
- 插件系統: 透過 Wiki.js 管理介面安裝官方或第三方插件
- 主題自定義: 在管理介面中自定義外觀和主題
- API 整合: 使用 Wiki.js 的 GraphQL API 開發外部整合
- 認證整合: 支援 LDAP, OAuth, SAML 等多種認證方式
- 添加反向代理 (如 Nginx, Traefik)
- 整合監控服務 (如 Prometheus, Grafana)
- 添加自動備份排程
- SSL/TLS 憑證管理
- 服務無法啟動: 檢查 Docker 是否正常運行,埠號是否衝突
- 資料庫連線失敗: 確認
.env
中的資料庫設定正確 - 權限問題: 確保
data/
目錄有適當的寫入權限
# 查看 Wiki.js 詳細日誌
docker compose logs --tail=100 -f wiki
# 查看資料庫日誌
docker compose logs --tail=100 -f db
- 變更預設密碼: 務必設定強密碼並定期更換
- 網路安全: 在生產環境中使用反向代理並配置 SSL
- 定期備份: 建立定期備份機制
- 更新維護: 定期更新 Docker images 以獲得安全修補
本專案採用 MIT 授權條款。Wiki.js 本身的授權請參考其官方文件。