当前位置: 首页 > 科技观察

使用PodmanDesktop在FedoraLinux上管理容器

时间:2023-03-15 14:12:25 科技观察

历史上,开发人员使用DockerDesktop对容器进行图形化管理。这是为那些安装了DockerDaemon和DockerCLI的人准备的。然而,对于那些使用无守护程序Podman工具的人来说,没有官方应用程序,尽管有Podman前端,如Pods、Podman桌面伴侣和Cockpit。这已不再是这种情况。使用Podman桌面!本文讨论了由RedHat和其他开源贡献者开发的PodmanDesktop的功能、安装和使用。安装要在FedoraLinux上安装PodmanDesktop,请访问podman-desktop.io并单击“为Linux下载”按钮。您将看到两个选项:Flatpak和zip。在这个例子中,我们使用的是Flatpak。单击“Flatpak”链接后,双击文件(如果您使用的是GNOME)在GNOME软件中将其打开。您也可以通过终端安装它:flatpakinstallpodman-desktop-X.X.X.flatpak在上面的命令中,将X.X.X替换为您下载的特定版本。如果您下载了zip文件,请解压存档并启动PodmanDesktop应用程序二进制文件。您还可以通过转到GitHub上项目的发布页面找到预发布版本。功能PodmanDesktop仍处于早期阶段。但是,它支持许多常见的容器操作,例如创建容器镜像、运行容器等。此外,您可以在Preferences的Extensions部分找到Podman扩展,您可以使用它来管理macOS和Windows上的Podman虚拟机。此外,PodmanDesktop支持DockerDesktop扩展。您可以从“首选项”下的“Docker桌面扩展”安装此类扩展。应用程序窗口有两个窗格。左侧的窄窗格显示了应用程序的不同功能,右侧的窗格是内容区域,它将根据左侧选择的内容显示相关信息。PodmanDesktop0.0.6在Fedora36上运行演示为了充分了解PodmanDesktop的功能,我们将从Dockerfile创建一个映像并将其推送到注册表,然后拉取并运行它,所有这些都在PodmanDesktop中进行。构建镜像的第一步是通过在命令行中输入以下行来创建一个简单的Dockerfile:cat<>DockerfileFROMdocker.io/library/httpd:2.4COPY。/var/www/htmlWORKDIR/var/www/htmlCMD["httpd","-D","FOREGROUND"]EOF现在,单击“ImageImages”并按下“BuildImage”按钮。您将被带到一个新页面以指定Dockerfile、构建上下文和图像名称。在容器文件路径下,单击并浏览以选择您的Dockerfile。在图像名称下,输入图像的名称。如果要将映像推送到容器注册表,可以以example.com/username/repo:tag的形式指定完全限定的映像名称(FQIN)。在此示例中,我输入quay.io/codezombie/demo-httpd:latest因为我在quay.io上有一个名为demo-httpd的公共存储库。您可以以类似的格式指定容器注册表(Quay、DockerHub、GitHub容器注册表等)的FQIN。现在,按下“构建”按钮并等待构建完成。构建推送镜像后,就可以推送镜像了。因此,我们需要在PodmanDesktop中配置注册表。转到“首选项”->“注册表”,然后按“添加注册表”按钮。添加注册表对话框在“添加注册表”对话框中,输入您的注册表服务器地址和用户凭据,然后单击“添加注册表”。现在,返回镜像列表中的我的镜像,然后按上传图标将其推送到存储库。当您将鼠标悬停在以设置中添加的注册表名称开头的图像名称(本演示中为quay.io)时,图像名称旁边会出现一个按钮。将鼠标悬停在图像名称上时出现的按钮图像通过PodmanDesktop推送到存储库一旦图像被推送,任何有权访问图像存储库的人都可以拉取它。由于我的注册表是公开的,您可以轻松地将其拉入PodmanDesktop。拉取镜像因此,为确保一切正常,请在本地删除此镜像并将其拉入PodmanDesktop。在列表中找到图像,然后按删除图标将其删除。移除镜像后,点击“PullImage”按钮。在“ImagetoPull”中输入完全限定名称,然后按“PullImage”。我们的容器镜像已成功拉取创建容器作为PodmanDesktop演示的最后一部分,让我们从镜像启动一个容器并检查结果。转到“容器”并按“创建容器”。这将打开一个对话框,其中包含两个选项:“来自Containerfile/DockerfileFromContainerfile/Dockerfile”和“来自现有图像”。按“从现有图像”。这将转到镜像列表。在那里,选择我们要拉取的图像。在PodmanDesktop中创建一个容器现在,我们从列表中选择我们最近拉取的图像,然后按下它前面的“播放”按钮。在出现的对话框中,我输入了demo-web作为容器名称,8000作为端口映射,然后按下“启动容器”。Container配置容器正在运行,我们可以通过运行以下命令检查Apache服务器的默认页面:curlhttp://localhost:8000有效!您还应该能够在容器列表中看到正在运行的容器,其状态更改为“正在运行”。在那里,您会在容器前面找到可用的操作。比如你可以点击终端图标打开一个TTY进入容器!下一步是什么PodmanDesktop还很年轻,正在积极开发中。GitHub上有一个项目路线图,按需列出了令人兴奋的功能,包括:Kubernetes集成支持Pod任务管理器卷支持支持DockerComposeKind支持