Podman 所做的所有更改最終匯聚成一個更靈活、更具響應能力的容器運行時引擎。

譯自Podman 5 Arrives with Multiplatform Images, VM Support,作者Jack Wallen。

如果你一直在使用Podman 進行容器部署或開發,​​那麼你將大飽口福。

Red Hat最近發布了Podman 容器管理系統的5.0 版本,該版本完全重新設計了Podman 虛擬機器管理工具(podman-machine)的程式碼。

官方發佈公告中提到:“Podman machine 包含一組子命令,用於管理Podman 虛擬機,這是用戶在MacOS 或Windows 上運行Podman 所必需的。”

在Podman 5.0中,新增了許多功能和改進,包括:

  • 新的podman machine reset選項,它簡化了重置Podman 虛擬機器的過程

  • Podman 虛擬機器的全新訂閱管理器和qemu-user-static功能

  • Podman 虛擬機器的更快的啟動時間

  • 用於在遠端機器上快速建立多平台鏡像的podman farm build

  • 增加了對開放容器計劃工件的支援的podman manifest

  • 對無根網路工具的更改,以獲得效能更高的網路堆疊

對Podman 所做的所有更改最終都匯集到一個更靈活、更響應的容器運行時引擎中。

問題

目前使用Podman 5 的能力相當有限。據我所知,截至本週,獲取/測試Podman 5 的唯一方法是透過Fedora Linux,因為其他發行版的儲存庫中唯一可用的版本是4.x。對於Fedora,安裝Podman 5 的唯一方法是透過開發版本。

如何在Fedora 上安裝Podman 5

首先,我不建議在生產機器上安裝Podman 的開發版本。僅在測試環境中使用它。我也不會建議在虛擬機器上執行此操作,因為Podman 將難以存取KVM 系統。

另一個問題是,你無法使用Fedora 40 beta 1 之前的任何Fedora 版本。如果你使用的是39 或更早版本的Fedora,則此方法將不起作用。因此,你需要做的第一件事是下載Fedora 40 beta 的ISO。完成後,建立可開機隨身碟,啟動進入Fedora 40 beta 1,然後安裝作業系統。

安裝Fedora 40 beta 1 後,你可以使用以下指令安裝Podman 5.0 的開發版本:

sudo dnf update --refresh --enablerepo=updates-testing podman

完成後,你可以使用以下命令驗證安裝:

podman --version

你應該在輸出中看到類似以下內容:

podman version 5.0.1

Podman 5.0 最好的功能之一是能夠快速重置機器環境。此命令將停止所有正在運行的機器並刪除它們。此外,還將刪除設定資料檔案(例如機器磁碟映像和先前提取的快取映像)。該命令只有一個選項,即–force(或僅-f),它在未經確認的情況下重置所有內容。

假設你創建了幾個機器,如下所示:

  • podman machine init dev1

  • podman machine init dev2

  • podman machine init web1

  • podman machine init web2

然後,你使用以下命令啟動它們:

podman machine start dev1
podman machine start dev2
podman machine start web1
podman machine start web2

接下來,你使用以下命令存取每台機器:

podman machine ssh NAME

其中NAME 可以是dev1dev2web1web2

訪問機器後,你進行了開發工作,運行了一些測試,或者對機器執行了任何你需要執行的操作。使用完這些機器後,如果你想使用Podman 4.x 擺脫它們,則必須分別停止它們,然後使用以下命令刪除它們:

podman machine stop NAME
podman machine rm NAME

其中NAME 可以是dev1、dev2、web1 或web2。

使用Podman 5.0,可以使用以下命令完成所有這些操作:

podman machine reset

你的所有機器都將被停止並刪除(以及關聯的檔案和資料)。

新版本還包括podman farm build命令,該命令在farm 節點上建立鏡像,然後將它們捆綁到清單列表中。我還沒有測試過此功能,但根據手冊頁(使用man podman-farm閱讀):

Podman 透過讀寫位於$XDG_CONFIG_HOME/containers下的podman-connections.json檔案來管理farm,如果未設定env,則預設為$HOME/.config/containers。或者可以將PODMAN_CONNECTIONS_CONF環境變數設定為podman 將使用的一個完整檔案路徑。此文件由podman 指令管理,使用者切勿直接編輯。若要手動配置farm,請使用containers.conf中的[farm]部分。

對於那些不使用Fedora 40 的人,我還沒有發現任何跡象表明它何時可用於不同的發行版。如果我猜的話,Podman 5.0 將在今年隨9.4 版本進入Red Hat Enterprise Linux。如果發生這種情況,它很可能很快就會進入Rocky Linux、AlmaLinux和Oracle Linux。

同樣重要的是,在更新到Podman 5.0 之前,使用者要了解Podman 4 機器與Podman 5.0 不相容。因此,在升級到5.0 之前,您應該刪除所有Podman 4 機器。在刪除這些機器並升級到Podman 5.0 之後,也建議在部署任何新機器之前執行podman machine reset命令。

若想進一步了解Podman 5.0,請查看Podman 網站上的新功能摘要文章。

 

By tony

自由軟體愛好者~喜歡不斷的思考各種問題,有新的事物都會想去學習嘗試 做實驗並熱衷研究 沒有所謂頂天的技術 只有謙虛及不斷的學習 精進專業,本站主要以分享系統及網路相關知識、資源而建立。 Github http://stnet253.github.io

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料