0

我正在尝试在 Red Hat Enterprise Linux 8 (CentoOS 8) 虚拟机中设置构建服务器。

我通过运行安装了 podmansudo dnf install -y @container-tools

然后我跑去sudo podman pull mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim从 docker 拉出一个容器镜像:

试图拉 mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim...获取图像源签名
复制 blob e936bd534ffb 完成
复制 blob caf64655bcbb 完成
复制 blob 4156e490f05f 完成
复制 blob 68ced04f60ab 完成
复制 blob 7064c3d93b4a 完成
复制配置 e2cd20adb完成
将清单写入图像目标
存储签名
e2cd20adb1292ef24ca70de7abaddaadd57a5c932d3852b972e43b6f05a03dea

这对我来说看起来很成功。如果我再次运行它,我会被告知这些层“已经存在”。但后来我运行:

podman image ls

我得到一个空列表:

存储库标签图像 ID 创建大小

我还尝试了以下命令来获取列表:

  • podman image ls -a
  • podman image list
  • podman image list -a
  • podman images
  • podman images ls
  • podman images ls -a
  • podman images list
  • podman images list -a

他们都给出了一个空列表。

如何查看我拉下的容器镜像?

更新:我跑sudo podman run --rm --name=linuxconfig-test -p 80:80 httpd并(在另一台机器上)浏览到我的 linux 机器的 IP 地址并It Works!显示出来。所以 podman 至少有一部分在工作。

4

2 回答 2

5

与 Docker 不同,Podman 将图像存储在用户的主目录中。默认路径是~/.local/share/containers/storage,可以通过运行来验证podman info。由于您podman pull以 root 身份执行,因此拉取的图像将存储在 root 用户的主目录中。这就是为什么在podman image ls没有sudo.

podman 背后的主要思想是它可以完全在用户模式下运行,而无需连接到特权守护进程。理想情况下,所有 podman 命令都应该在没有sudo.

于 2020-04-19T07:57:22.567 回答
0

原来你必须使用sudo. 我跑了:

sudo podman image ls

它返回了容器图像列表。

于 2020-03-02T17:23:24.083 回答