使用 Podman Desktop 在 Fedora Linux 上管理容器
Podman Desktop 是一個開源 GUI 應用,用於在 Linux、macOS 和 Windows 上管理容器。
從歷史上看,開發人員一直使用 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 仍處於早期階段。然而,它支持許多常見的容器操作,如創建容器鏡像、運行容器等。此外,你可以在 「 首選項 」 的 「 擴展 」 部分下找到 Podman 擴展,你可以使用它來管理 macOS 和 Windows 上的 Podman 虛擬機。
此外,Podman Desktop 支持 Docker Desktop 擴展。你可以在 「 首選項 」 下的 「Docker Desktop Extensions」 安裝此類擴展。應用窗口有兩個窗格。左側窄窗格顯示應用的不同功能,右側窗格是內容區域,它將根據左側選擇的內容顯示相關信息。
演示
為了全面了解 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
現在,點擊 「 鏡像 」 並按下 「 構建鏡像 」 按鈕。你將被帶到一個新頁面以指定 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。現在,按下 「 構建 」 按鈕並等待構建完成。
推送鏡像
構建完成後,就該推送鏡像了。所以,我們需要在 Podman Desktop 中配置一個註冊中心。進入 「 首選項 」 -> 「 註冊中心 」 並按下 「 添加註冊中心 」 按鈕。
在 「 添加註冊中心 」 對話框中,輸入你的註冊中心伺服器地址和用戶憑據,然後單擊 「 添加註冊中心 」。
現在,回到鏡像列表中我的鏡像,並按下上傳圖標將其推送到倉庫。當你將滑鼠懸停在設置中添加的註冊中心名稱開頭的鏡像名稱上時(此演示中的 quay.io
),鏡像名稱旁邊會出現一個推送按鈕。
鏡像被推送後,任何有權訪問鏡像倉庫的人都可以拉取它。由於我的鏡像倉庫是公開的,因此你可以輕鬆地將其拉入 Podman Desktop。
拉取鏡像
因此,為確保一切正常,請在本地刪除此鏡像並將其拉入 Podman Desktop。在列表中找到鏡像並按刪除圖標將其刪除。刪除鏡像後,單擊 「 拉取鏡像 」 按鈕。在 「 要拉取的鏡像 」 輸入完全限定名稱,然後按 「 拉取鏡像 」。
創建一個容器
作為 Podman Desktop 演示的最後一部分,讓我們從鏡像中啟動一個容器並檢查結果。轉到 「 容器 」 並按 「 創建容器 」。這將打開一個包含兩個選項的對話框:「 從 Containerfile/Dockerfile 」 和 「 從已有鏡像 」。按下 「 從已有鏡像 」。這將進入鏡像列表。在那裡,選擇我們要拉取的鏡像。
現在,我們從列表中選擇我們最近拉取的鏡像,然後按它前面的 「 運行 」 按鈕。在出現的對話框中,我輸入 demo-web
作為容器名,輸入 8000
作為埠映射,然後按下 「 啟動容器 」。
容器開始運行,我們可以通過運行以下命令檢查 Apache 伺服器的默認頁面:
curl http://localhost:8000
你還應該能夠在容器列表中看到正在運行的容器,其狀態已更改為 「 運行中 」。在那裡,你會在容器前面找到可用的操作。例如,你可以單擊終端圖標打開 TTY 進入到容器中!
接下來是什麼
Podman Desktop 還很年輕,處於 積極開發 中。 GitHub 上有一個項目 路線圖,其中列出了令人興奮的按需功能,包括:
- Kubernetes 集成
- 支持 Pod
- 任務管理器
- 卷支持
- 支持 Docker Compose
- Kind 支持
via: https://fedoramagazine.org/manage-containers-on-fedora-linux-with-podman-desktop/
作者:Mehdi Haghgoo 選題:lkxed 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive