使用 Podman Desktop 在 Fedora Linux 上管理容器
從歷史上看,開發人員一直使用 Docker Desktop 對容器進行圖形化管理。這適用於那些安裝了 Docker Daemon 和 Docker CLI 的人。然而,對於那些使用無守護程序的 Podman 工具的人來說,雖然有一些 Podman 前端,如 Pods 、 Podman desktop companion 和 Cockpit ,但沒有官方應用。現在不是這種情況了。有了 Podman Desktop!
本文將討論由紅帽和其他開源貢獻者開發的 Podman Desktop 的特性、安裝和使用。
安裝
要在 Fedora Linux 上安裝 Podman Desktop,請訪問 podman-desktop.io ,然後單擊 “Download for Linux” 按鈕。你將看到兩個選項:Flatpak 和 zip。在這個例子中,我們使用的是 Flatpak。單擊 “Flatpak” 連結後,通過雙擊檔案在 GNOME 軟體中開啟它(如果你使用的是 GNOME)。你也可以通過終端安裝它:
flatpak install podman-desktop-X.X.X.flatpak
在上面的命令中,將 X.X.X 替換為你下載的特定版本。如果你下載了 zip 檔案,那麼解壓縮存檔,然後啟動 Podman Desktop 應用的二進位制檔案。你還可以通過進入 GitHub 上專案的 釋出 頁找到預釋出版本。
特性
Podman Desktop 仍處於早期階段。然而,它支援許多常見的容器操作,如建立容器映象、執行容器等。此外,你可以在 “首選項Preferences” 的 “擴充套件Extensions” 部分下找到 Podman 擴充套件,你可以使用它來管理 macOS 和 Windows 上的 Podman 虛擬機器。
此外,Podman Desktop 支援 Docker Desktop 擴充套件。你可以在 “首選項Preferences” 下的 “Docker Desktop Extensions” 安裝此類擴充套件。應用視窗有兩個窗格。左側窄窗格顯示應用的不同功能,右側窗格是內容區域,它將根據左側選擇的內容顯示相關資訊。
Podman Desktop 0.0.6 在 Fedora 36 上執行
演示
為了全面瞭解 Podman Desktop 的功能,我們將從 Dockerfile 建立一個映象並將其推送到註冊中心,然後拉取並執行它,這一切都在 Podman Desktop 中完成。
構建映象
第一步是通過在命令列中輸入以下行來建立一個簡單的 Dockerfile:
cat <<EOF>>Dockerfile FROM docker.io/library/httpd:2.4 COPY . /var/www/html WORKDIR /var/www/html CMD ["httpd", "-D", "FOREGROUND"] EOF
現在,點選 “映象Images” 並按下 “構建映象Build Image” 按鈕。你將被帶到一個新頁面以指定 Dockerfile、構建上下文和映象名稱。在 Containerfile 路徑下,單擊並瀏覽以選擇你的 Dockerfile。在映象名稱下,輸入映象的名稱。如果要將映象推送到容器註冊中心,那麼可以以 example.com/username/repo:tag
形式指定完全限定的映象名稱(FQIN)。在此示例中,我輸入 quay.io/codezombie/demo-httpd:latest
,因為我在 quay.io
上有一個名為 demo-httpd
的公共倉庫。你可以按照類似的格式來指定容器註冊中心(Quay、Docker Hub、GitHub Container Registry 等)的 FQIN。現在,按下 “構建Build” 按鈕並等待構建完成。
推送映象
構建完成後,就該推送映象了。所以,我們需要在 Podman Desktop 中配置一個註冊中心。進入 “首選項Preferences” -> “註冊中心Registries” 並按下 “添加註冊中心Add registry” 按鈕。
添加註冊中心對話方塊
在 “添加註冊中心Add registry” 對話方塊中,輸入你的註冊中心伺服器地址和使用者憑據,然後單擊 “添加註冊中心Add registry”。
現在,回到映象列表中我的映象,並按下上傳圖示將其推送到倉庫。當你將滑鼠懸停在設定中新增的註冊中心名稱開頭的映象名稱上時(此演示中的 quay.io
),映象名稱旁邊會出現一個推送按鈕。
將滑鼠懸停在映象名稱上時出現的按鈕
映象通過 Podman Desktop 推送到倉庫
映象被推送後,任何有權訪問映象倉庫的人都可以拉取它。由於我的映象倉庫是公開的,因此你可以輕鬆地將其拉入 Podman Desktop。
拉取映象
因此,為確保一切正常,請在本地刪除此映象並將其拉入 Podman Desktop。在列表中找到映象並按刪除圖示將其刪除。刪除映象後,單擊 “拉取映象Pull Image” 按鈕。在 “要拉取的映象Image to Pull” 輸入完全限定名稱,然後按 “拉取映象Pull Image”。
Our container image is successfully pulled
建立一個容器
作為 Podman Desktop 演示的最後一部分,讓我們從映象中啟動一個容器並檢查結果。轉到 “容器Containers” 並按 “建立容器Create Container”。這將開啟一個包含兩個選項的對話方塊:“從 Containerfile/DockerfileFrom Containerfile/Dockerfile” 和 “從已有映象From existing image”。按下 “從已有映象From existing image”。這將進入映象列表。在那裡,選擇我們要拉取的映象。
在 Podman Desktop 中建立容器
現在,我們從列表中選擇我們最近拉取的映象,然後按它前面的 “執行Play” 按鈕。在出現的對話方塊中,我輸入 demo-web
作為容器名,輸入 8000
作為埠對映,然後按下 “啟動容器Start Container”。
Container configuration
容器開始執行,我們可以通過執行以下命令檢查 Apache 伺服器的預設頁面:
curl http://localhost:8000
可以工作!
你還應該能夠在容器列表中看到正在執行的容器,其狀態已更改為 “執行中Running”。在那裡,你會在容器前面找到可用的操作。例如,你可以單擊終端圖示開啟 TTY 進入到容器中!
接下來是什麼
Podman Desktop 還很年輕,處於 積極開發 中。 GitHub 上有一個專案 路線圖 ,其中列出了令人興奮的按需功能,包括:
- Kubernetes 整合
- 支援 Pod
- 工作管理員
- 卷支援
- 支援 Docker Compose
- Kind 支援
- 使用 Podman Desktop 在 Fedora Linux 上管理容器
- 你是怎麼在 Linux 幹掉程序的?
- 玩轉核心連結串列Llist_Head,教你管理不同型別節點的實現
- Fedora 37 可以測試了,Linux 之父日常作業系統帶來 GNOME 43
- Windows 12來了!原來又是設計師腦洞大開的傑作
- 軟體開發人員的理想 Linux 發行版
- 你應該知道的 22 個基本的 Linux 網路命令
- 谷歌為Chrome瀏覽器今年的第五個 "0 day漏洞" 打補丁
- 基於Web瀏覽器對音影片編解碼的探索和實踐
- 61秒,摸透Linux的健康狀態!
- HarmonyOS應用開發:鴻蒙JS實戰,計算器功能開發!
- Linux 怎麼防止 ssh 被暴力破解
- 比各種清理大師靠譜!Edge瀏覽器新技術大幅提速
- 最近版 Opera 引發 Windows 可靠性監視器錯亂
- 修復 Ubuntu 中的 “cannot find signatures with metadata for snap” 錯誤
- 不想升級Windows 11?教你堅守Windows 10的正確姿勢
- 這六個 VS Code 主題你不應該錯過
- 要想Linux命令列玩的溜,還得apropos!此文運維必看
- Linux 之父發話:Rust 將合併到 Linux 5.20 核心中去
- Ubuntu Core 22 來了,適用於物聯網和邊緣裝置