配置
公共自託管配置是簽入的 cto-gui/docker-compose.self-hosted.yml 加上 cto-gui-libvirt-backend 讀取的設定。本頁記錄了評估表面。它沒有發明通用的企業環境合約。
撰寫合約
| 設定 | 登記值 | 目的 |
|---|---|---|
SELF_HOSTED | true | 選擇本地控制台模式並停用依賴雲端的路由 |
KVM_URI | qemu:///system | 連線到主機系統 libvirt 守護程式 |
TEST_STORAGE_DIR | /app/data/tests | 在 cto-data 中保留測試狀態、鎖定和清理日誌 |
SOURCE_ISO_DIR | 主機來源 ISO 路徑 | 解決主機 libvirt 可見的相同絕對路徑中的唯讀來源工件 |
SOURCE_GOLDEN_IMAGE_DIR | 主機提升映像路徑 | 解析主機 libvirt 可見的相同絕對路徑中不可變的已安裝 QCOW2 輸入 |
TRUST_PROXY_HEADERS | Compose 文件中的 true | 允許代理派生的客戶端資訊遵守後端的可信任代理規則 |
除非故意更改後端設置,否則後端也將預設 ISO 上傳到 /var/lib/libvirt/images 並將上傳限制為 10 GB。
主機路徑覆蓋
有兩個 shell 環境變數會影響 Compose 綁定安裝:
export SOURCE_ISO_HOST_DIR=/srv/openfactory/source-isos
export SOURCE_GOLDEN_IMAGE_HOST_DIR=/srv/openfactory/golden-images
docker compose -f docker-compose.self-hosted.yml up --build -d首先建立並授予這些目錄權限。容器路徑與主機路徑保持相同,因為主機 libvirt(而不是容器)開啟 QEMU 的映像檔。僅存在於容器內部的路徑將在來賓啟動時失敗。
持久性和非持久性數據
| 地點 | 所有權和生命週期 |
|---|---|
/var/lib/libvirt/images | 主機管理的上傳 ISO、來賓磁碟與覆蓋 |
| 來源 ISO 目錄 | 操作員管理,唯讀掛載 |
| 黃金形象目錄 | 操作員推動的不可變輸入,以唯讀方式安裝 |
cto-data 命名卷 | 後端狀態包括測試記錄和清理日誌 |
| 容器檔案系統外部安裝 | 一次性的;不要依賴它來恢復 |
僅在確定必須保留哪些資源後才進行備份或快照。 Compose 檔案不安排備份。
曝光和代理設置
前端映射主機連接埠 80。 TRUST_PROXY_HEADERS 不提供 TLS 或身份驗證;它僅更改後端從明確信任的代理範圍接受轉發的連接元資料的方式。如果新增反向代理,請嚴格設定其網路路徑和受信任代理,並驗證來自不受信任對等方的欺騙性轉送標頭是否被拒絕。
請勿將評估控制台直接放置在公共網路上。生產身分、TLS、機密和授權設計是單獨的部署決策。
驗證每個更改
更改路徑或設定後:
- 重新建立受影響的容器;
2.透過模式端點驗證
self_hosted: true; 3.上傳並啟動一次性ISO; 4、停止並刪除該訪客; - 重新啟動堆疊並確認清理狀態和庫存是否存在。