跳到內容
返回官網

容器應用程式

JelinaOS 內建完整的容器執行環境(Docker),但容器應用程式的部署遵循統一原則:透過釋出(Release)體系管理,而不是直接在裝置上手工執行容器。正式環境的容器應用程式,建議全部走釋出流程——定義、部署、守護、更新、回復,全鏈路可控。

建置並推送映像 → 在釋出中宣告容器應用程式 → 部署到裝置 → 裝置代理程式拉取並執行

將應用建置為容器映像,並推送到映像儲存庫(企業私有儲存庫或公共儲存庫):

Terminal window
docker build -t registry.example.com/myapp:1.0.0 .
docker push registry.example.com/myapp:1.0.0

在 JelinaCloud 建立釋出,新增容器應用程式:

  • 指定映像位址與版本標籤(建議使用明確的版本,避免意外升級);
  • 設定環境變數、埠映射、資料卷;
  • 設定重新啟動策略(推薦 always)與資源限制。

將釋出部署到目標艦隊或裝置,裝置代理程式自動完成:

  • 拉取映像並建立容器;
  • 按設定注入環境變數、映射埠、掛載資料卷;
  • 啟動容器並持續守護(異常自動重新啟動、裝置重新啟動自動復原)。

容器檔案系統在容器重建後會丟失,需要持久化的資料請掛載到資料分割區:

  • 在釋出中為應用宣告資料卷,或掛載裝置資料分割區目錄;
  • 資料獨立於容器生命週期,升級、重建不影響。

裝置上的 Docker 命令用於檢視與診斷,不用於部署管理:

Terminal window
docker ps # 檢視容器執行狀態
docker logs <容器名> # 檢視容器記錄
docker events # 跟蹤容器事件(診斷用)
  • 固定版本:釋出中使用明確的映像版本標籤;
  • 健康檢查:為服務設定健康檢查,配合重新啟動策略實現自動復原;
  • 資源限制:為容器設定記憶體與 CPU 上限,避免影響裝置整體;
  • 私有儲存庫:企業環境使用私有映像儲存庫,映像分發由裝置代理程式統一完成;
  • 升級與回復:透過釋出新版本實現升級,透過重新指定原版本實現回復——均由雲端編排。

可以直接在裝置上 docker run 部署應用嗎? 技術上可行,但不推薦:直接執行的應用不在釋出體系中,無法獲得統一的守護、更新與回復能力。正式環境請透過釋出部署。

容器異常退出會怎樣? 釋出中設定了 restart: always 的應用,異常退出後由裝置代理程式自動重新啟動。