---
# System prepended metadata

title: 0503紀錄
tags: [實驗室系統]

---

# 實驗室技術系統總覽 (0503紀錄)

*最後更新：2025‑05‑03*

---

## 1. 伺服器清單

| IP / Host              | 主要角色             | 關鍵服務與元件                                                                                        | 直接相依                                   | 參考文件 / 備註                  |
| ---------------------- | ---------------- | ---------------------------------------------------------------------------------------------- | -------------------------------------- | -------------------------- |
| **140.115.53.144**     | 教育雲（舊）           | 舊版 education‑cloud 網站                                                                          | –                                      | 待 146 穩定後可移除，釋放空間          |
| **140.115.53.146**     | 教育雲（新）           | **Docker‑compose** 啟動 **前端**、**後端**、**MySQL**                                                  | 內部 DB container                        | `docker‑compose.yml` 及部署指南 |
| **140.115.53.151**     | **中央資料庫節點**      | for *review*、*assessment*、*LineBot*、*PyTutor*、*VisCode 2.0*                                    | –                                      | DB 結構圖                     |
| **140.115.53.156**     | 應用服務節點           | *CodeFlowGen*（React + Flask）、*PyTutor*、*Intervention Dashboard*、LineBot、PyChatBot              | 讀寫 **53.151**                          | 服務設定與 API 文件               |
| **140.115.53.158**     | GPU / ML 伺服器     | Docker 化 DL/ML 任務，各式服務                                                                         | –                                      | GPU driver / CUDA 更新 SOP   |
| **140.115.53.149**     | Online Judge     | OJ 網站 + 測評器                                                                                    | 讀取 PyTutor 分數（經由 53.156）               | OJ 管理手冊                    |
| **140.115.53.128**     | VisCode（舊）       | VisCode IDE（已遷移至 Colab）                                                                        | –                                      | 上課前需 stop all server       |
| **140.115.197.85**     | **BookRoll 主節點** | BR 伺服器、MySQL 5.7；京都 Dashboard（分析，MySQL 8、MongoDB、MinIO）；Cloze / Short‑Answer engines（gunicorn） | Nginx 反向代理 **197.84**；DB 複本 **53.130** | Notion 文件連結                |
| **140.115.197.84**     | 反向代理 / Moodle    | `brpt.bookroll.org.tw`（Moodle，PostgreSQL）；Nginx 轉發 BR & Dashboard 至 197.85                     | –                                      | Moodle DB 結構               |
| **140.115.53.130**     | 讀取副本 & 分析        | BookRoll MySQL 副本；Weekly‑Report & Analysis Tool；轉址 Flask                                       | 來源 DB **197.85**                       | 同步流程                       |
| **140.115.54.162**     | Summary Grading  | 總結自動評分                                                                                         | 使用 BR 日誌（197.85）                       | Summary pipeline 文件        |
| **170.20.53.31 / .32** | NAS / 儲存         | 備份用 RAID 陣列                                                                                    | –                                      | 硬碟健康檢查表                    |
| **140.115.53.131**     | GitLab（靜態）       | 實驗室網站與成員頁面（靜態檔）                                                                                | –                                      | 更新與備份 SOP                  |
| **140.115.53.149**     | Online Judge     | Contest & Problem 管理                                                                           | 依賴 PyTutor 分數                          | OJ guide                   |

> **小提醒：** 持續檢視 IP 分配，將低流量服務合併到共用主機或使用虛擬 IP 以釋放 IP。

---

## 2. 依賴關係圖

```
學生  →  BookRoll (197.85)  →  BR DB (197.85 ⇢ 副本 53.130)
         ↘︎ Review System (53.156)  →  MySQL 53.151
          ↘︎ Assessment System (53.156)  →  MySQL 53.151
          ↘︎ Online Judge (53.149) ———→ 取 PyTutor (53.156) 最終分數

教育雲（舊 144） ⟶ 146 穩定後下線
教育雲（新 146） （docker‑compose 自洽）

Nginx 197.84  →  轉發 *.bookroll.org.tw* 流量至 197.85（BR & Dashboard）
GPU 任務  →  僅於 53.158 執行（釋放資源請停用閒置 container）
```

### 主要關係

* **中央 DB (53.151)** — *Review*、*Assessment*、*LineBot*、*PyTutor*、*VisCode 2.0* 的單點；務必備份與監控。
* **BookRoll 主節點 (197.85)** ↔ **讀取副本 (53.130)** — MySQL 複寫；重新同步前須先停 BR。
* **Moodle (197.84)** — 提供學生資料給 BR 相關服務；PostgreSQL 正確性關鍵。
* **Online Judge (53.149)** — 1131 版透過 **PyTutor API (53.156)** 抓學生總分；後續版直接計算。

---

## 3. 例行維護清單

| 頻率        | 任務                                   | 相關伺服器               | 備註           |
| --------- | ------------------------------------ | ------------------- | ------------ |
| **每週**    | 上傳下一週教材；開啟 RS 並上傳 Cloze/SA；發送作業通知信   | BR 197.85、RS 53.156 | 批改後雲端備份      |
| **學期初**   | 將學生加入 BR；在 BR 新增 RS（LTI 外部工具）；論文上傳雲端 | BR 197.85、RS 53.156 |              |
| **期中／期末** | 從 RS 挑題、排程寄信、封存考題                    | RS 53.156、OJ 53.149 |              |
| **視需要**   | GPU driver / CUDA 更新                 | 53.158              | 依 GPU‑SOP    |
| **視需要**   | 關閉不用的 containers / services          | 53.158、53.156       | 釋放 GPU / CPU |

---

## 4. 已知痛點／風險

* **中央 DB 53.151 單點失效** — 建議設 master‑slave 或自動備份。
* **NAS 硬碟健康（170.20.x）** — 確認損壞時 *勿關機*，直接更換同型硬碟。
* **VisCode 舊版 (53.128)** — Colab 流程穩定後應正式下線。
* **教育雲舊版 (144)** — 待新版本確認無虞後釋放空間。

---

## 5. 參考程式庫索引（精選）

* `advapplab/esg_visualize` – ESG 視覺化（已棄用，可作為參考）。
* `advapplab/content-analysis` – 新聞摘要與演講稿生成。
* `advapplab/esg_phase2_tools` – 新聞＋演講稿整合系統。
* `advapplab/esgBERT_MLOps` – BERT 訓練流水線。

---

> 如需補充或修改內容，請隨時告訴我！
