centos - Podman 图像未使用 podman 图像 ls 显示
问题描述
我正在尝试在 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 至少有一部分在工作。
解决方案
与 Docker 不同,Podman 将图像存储在用户的主目录中。默认路径是~/.local/share/containers/storage
,可以通过运行来验证podman info
。由于您podman pull
以 root 身份执行,因此拉取的图像将存储在 root 用户的主目录中。这就是为什么在podman image ls
没有sudo
.
podman 背后的主要思想是它可以完全在用户模式下运行,而无需连接到特权守护进程。理想情况下,所有 podman 命令都应该在没有sudo
.
推荐阅读
- docker - Docker 构建挂起 ---> 正在运行
- windows - 当文件进入回收站时权限会发生什么变化?
- r - 将字符串通过多个过滤器进行匹配
- wordpress - Wordpress - How to create redirection in NGINX?
- arrays - React // Change array from child in parent state not working
- scala - Scala 中的 List[Try[T]] 到 Try[List[T]]
- javascript - Call javascript function through dynamically generated href tag (the js function has one paramter)
- javascript - How do you access the correct object in a dynamic array using a textfields name and value?
- c++ - How to make C++ Mysql Connector work with Visual Studio 2019?
- c# - .NET Core React 项目中的 MVC 路由没有选择我的控制器