安裝 Paideia LMS
Paideia LMS 提供兩種安裝方法:單一執行檔(建議用於快速部署)和 Docker Compose(用於需要完全控制的生产環境)。選擇最適合你需求的方法。
單一執行檔安裝
Section titled “單一執行檔安裝”- 作業系統:macOS(ARM64 或 x64)或 Linux(ARM64 或 x64)
- 終端機:存取命令列介面
Docker Compose 安裝
Section titled “Docker Compose 安裝”- Docker:Docker Engine 20.10 或更高版本
- Docker Compose:Docker Compose v2.0 或更高版本
- 連接埠:連接埠 3000、3001、5432、9000、9001 應該可用
單一執行檔安裝
Section titled “單一執行檔安裝”單一執行檔安裝是啟動 Paideia LMS 最快的方法。受 PocketBase 啟發,Paideia LMS 作為單一可執行檔分發,包含你所需的一切。
-
下載適用於你平台的執行檔:
終端機視窗 curl -L -o paideia https://github.com/paideia-lms/paideia/releases/latest/download/paideia-macos-arm64chmod +x paideiaxattr -c paideia終端機視窗 curl -L -o paideia https://github.com/paideia-lms/paideia/releases/latest/download/paideia-linux-arm64chmod +x paideia終端機視窗 curl -L -o paideia https://github.com/paideia-lms/paideia/releases/latest/download/paideia-linux-x64chmod +x paideia -
執行 Paideia LMS:
終端機視窗 ./paideia -
設定你的環境:
執行檔將引導你完成初始設定。你需要提供:
- 資料庫連線(PostgreSQL)
- 用於檔案儲存的 S3/MinIO 設定
- 管理員使用者憑證
或在執行前設定環境變數:
終端機視窗 export DATABASE_URL="postgresql://user:password@localhost:5432/paideia_db"export S3_URL="http://localhost:9000"export S3_ACCESS_KEY="your-access-key"export S3_SECRET_KEY="your-secret-key"export S3_BUCKET="paideia-bucket"./paideia -
存取 Paideia LMS:
開啟瀏覽器並導航至
http://localhost:3000(或透過FRONTEND_PORT環境變數設定的連接埠)。
Docker Compose 安裝
Section titled “Docker Compose 安裝”對於生產部署或需要完全控制基礎設施的情況,使用 Docker Compose。此設定包括 Paideia LMS、PostgreSQL 資料庫、MinIO(S3 相容儲存)。
-
建立
docker-compose.yml檔案:在專案目錄中建立一個名為
docker-compose.yml的新檔案:version: '3.8'services:paideia:image: hananoshikayomaru/paideia:latestcontainer_name: paideiarestart: noports:- "3000:3000"- "3001:3001"environment:# DatabaseDATABASE_URL: postgresql://paideia:paideia_password@postgres:5432/paideia_db# S3/MinIOS3_URL: http://minio:9000S3_ACCESS_KEY: paideia_minioS3_SECRET_KEY: paideia_minio_secretS3_ENDPOINT_URL: http://minio:9000S3_BUCKET: paideia-bucketS3_REGION: us-east-1# PayloadPAYLOAD_SECRET: change-this-to-a-secure-random-string# Ports (optional, defaults shown)PORT: 3001FRONTEND_PORT: 3000# Email (optional - uncomment if using SMTP)# SMTP_HOST: smtp.example.com# SMTP_USER: your-email@example.com# SMTP_PASS: your-password# RESEND_API_KEY: your-resend-api-key# Email sender (optional, defaults shown)EMAIL_FROM_ADDRESS: info@paideialms.comEMAIL_FROM_NAME: Paideia LMSCORS_ORIGINS: "*"# CSRF_ORIGINS: "https://paideia-13.localcan.dev"# Sandbox mode (optional, default: 0)# SANDBOX_MODE: 0networks:paideia_net:ipv4_address: 172.28.0.2depends_on:- postgres- miniopostgres:image: postgres:18container_name: paideia_postgresrestart: unless-stoppedenvironment:POSTGRES_USER: paideiaPOSTGRES_PASSWORD: paideia_passwordPOSTGRES_DB: paideia_dbports:- "5432:5432"volumes:- postgres_data:/var/lib/postgresqlhealthcheck:test: ["CMD-SHELL", "pg_isready -U paideia"]interval: 5stimeout: 5sretries: 10networks:paideia_net:ipv4_address: 172.28.0.3minio:image: minio/minio:latestcontainer_name: paideia_miniorestart: unless-stoppedports:- "9000:9000"- "9001:9001"environment:MINIO_ROOT_USER: paideia_minioMINIO_ROOT_PASSWORD: paideia_minio_secretvolumes:- minio_data:/datacommand: server /data --console-address ":9001"networks:paideia_net:ipv4_address: 172.28.0.4volumes:minio_data:postgres_data:networks:paideia_net:driver: bridgeipam:config:- subnet: 172.28.0.0/16 -
設定環境變數:
重要:啟動前,在
docker-compose.yml中更新以下內容:PAYLOAD_SECRET:為生產環境產生安全的隨機字串POSTGRES_PASSWORD:更改預設密碼MINIO_ROOT_PASSWORD:更改預設密碼S3_ACCESS_KEY和S3_SECRET_KEY:更新以供生產使用- 電子郵件設定:如果使用 SMTP,請取消註解並設定
-
啟動所有服務:
終端機視窗 docker-compose up -d -
驗證服務正在執行:
終端機視窗 docker-compose ps你應該看到所有三個服務(paideia、postgres、minio)都處於 “Up” 狀態。
-
存取 Paideia LMS:
- 前端:
http://localhost:3000 - API:
http://localhost:3001 - MinIO 控制台:
http://localhost:9001(使用paideia_minio/paideia_minio_secret登入) - PostgreSQL:
localhost:5432
- 前端:
-
建立管理員使用者:
首次存取時,系統會提示你建立管理員帳戶。按照畫面上的說明操作。
兩種安裝方法都支援以下環境變數:
| 變數 | 說明 | 預設值 | 必需 |
|---|---|---|---|
DATABASE_URL | PostgreSQL 連接字串 | - | 是 |
S3_URL | S3/MinIO 端點 URL | - | 是 |
S3_ACCESS_KEY | S3 存取金鑰 | - | 是 |
S3_SECRET_KEY | S3 密鑰 | - | 是 |
S3_BUCKET | S3 儲存桶名稱 | - | 是 |
S3_REGION | S3 區域 | us-east-1 | 否 |
PORT | 後端 API 連接埠 | 3001 | 否 |
FRONTEND_PORT | 前端連接埠 | 3000 | 否 |
PAYLOAD_SECRET | 用於有效載荷加密的密鑰 | - | 是 |
CORS_ORIGINS | 允許的 CORS 來源 | * | 否 |
EMAIL_FROM_ADDRESS | 電子郵件寄件者地址 | info@paideialms.com | 否 |
EMAIL_FROM_NAME | 電子郵件寄件者名稱 | Paideia LMS | 否 |
SMTP_HOST | SMTP 伺服器主機 | - | 否 |
SMTP_USER | SMTP 使用者名稱 | - | 否 |
SMTP_PASS | SMTP 密碼 | - | 否 |
RESEND_API_KEY | Resend API 金鑰 | - | 否 |
SANDBOX_MODE | 啟用沙盒模式 | 0 | 否 |
- 更改預設密碼:在生產環境中始終更新預設密碼
- 產生安全密鑰:為
PAYLOAD_SECRET使用加密安全的隨機字串 - 正確設定 CORS:將
CORS_ORIGINS: "*"替換為你的實際網域 - 使用 HTTPS:在生產環境中設定反向代理(nginx、Traefik 等)以使用 HTTPS
- 資料庫安全:使用強 PostgreSQL 密碼並考慮網路限制
安裝並執行 Paideia LMS 後:
- 設定你的第一個課程:建立課程、新增內容和管理學生
- 設定使用者管理:設定角色、權限和存取控制
- 與 Microsoft 整合:設定 Microsoft Teams、OneDrive 和 Office 365 整合
- 啟用 LTI:設定學習工具互通性以進行外部工具整合
- 探索 AI 功能:設定和設定 AI 原生功能
有關詳細的設定說明,請參閱我們的設定指南 (EN)。
Learn