開源容器平臺Podman推出重大更新版本5.0,在最新版本中,開發團隊重寫了Podman Machine指令,強化對Windows和Mac作業系統的支援,而清單(Manifests)也支援OCI構件,以支援不同類型的容器,另外,Podman現在預設使用Pasta來處理非Root網路。

Podman Machine是Podman用來啟動Linux虛擬機器,可讓Windows和Mac系統也能運作Linux容器的重要元件,而開發團隊重寫Podman Machine指令,如此不只能提高執行效能和穩定度,也明顯增加了不同虛擬機器供應商之間程式碼共用的比例,降低使用者維護程式的成本。

而Podman 5.0也新增Apple虛擬機器管理程式(Apple ㄑ)支援,以大幅提高Podman在Mac上的穩定性、啟動時間和檔案共享效能。用戶還可以使用新的Podman Machine重置指令,刪除由Podman Machine管理的虛擬機器。

從Podman 4.4版本開始支援Pasta非Root網路後端,讓普通用戶即便在沒有Root權限的情況下,也能設定和管理容器網路,而官方提到,因為Pasta可以明顯改善效能,因此將其預設為Podman 5.0的非Root網路後端。

同時,有鑑於Podman 4.9使用SQLite作為預設資料庫,大幅提高了穩定性,而現在官方進一步棄用BoltDB資料庫後端,使用者已經無法創建BoltDB資料庫,所有新的Podman安裝皆使用SQLite資料庫,不過既有的BoltDB資料庫仍然可以使用。

由於Podman 4.0新加入網路堆疊Netavark,已經能適用所有Podman使用案例,效能和功能都已等同甚至是超越CNI,因此Podman 5.0移除對大多數平臺的CNI(Container Network Interface)網路支援。

取消CNI支援能夠減少開發團隊的負擔,而且也因為CNI專案轉為專注支援Kubernetes,進一步促使Podman團隊取消支援CNI。不過部分版本仍需要CNI,像是FreeBSD、RHEL,這些版本皆會維持啟用CNI的狀態。

在最新版本中,containers.conf配置文件處理也有變化,現在不會覆寫用戶修改過的檔案,也就是說,Podman更新或是執行的時候,能夠維持用戶對containers.conf進行的變更,確保用戶自定義設定不會被Podman更新時覆蓋掉。

此外,Podman 5.0還強化對Docker的相容性,開發團隊修改Podman Inspect指令的輸出,使其能夠更好的搭配Docker的輸出格式,讓從Docker過渡至Podman的用戶更容易適應,也使基於Docker的工具和腳本更容易和Podman相容。

由於Podman 5.0是一個重大的更新,官方強調,Podman 4與Podman 5機器間沒有直接升級的方法,因此對於重要的Podman專案,使用者應該謹慎升級。而執行Mac的Podman 4,因為是以QEMU虛擬化為基礎,而Podman 5在Mac上使用了Apple虛擬機器管理程式,並且棄用了對QEMU的支援,因此要在Mac上使用Podman 5,除了本身軟體之外,用戶還需要安裝可透過虛擬化框架啟動虛擬機器的簡單命令列工具vfkit。

熱門新聞

Advertisement