奇点相当于“docker镜像列表”

use*_*859 9 docker singularity-container

是否存在与 等价的奇点docker image list?Singularity 3.8 文档指出

所有缓存条目均使用内容哈希命名

这在检查相同的图层/图像时有意义,但没有任何语义意义。将其与 docker 进行比较,dockerdocker image list列出了您已经拥有的具有语义意义名称的映像(例如 ubuntu、ros)。例子:

$ singularity cache list -v
NAME                     DATE CREATED           SIZE             TYPE
496a66ed93a0244167905e   2021-07-23 18:20:26    0.57 KiB         blob
6b05187eae388023ea3f9d   2021-07-23 18:20:26    0.34 KiB         blob
a31c7b29f4ad2bd9467389   2021-07-23 18:20:26    27.24 MiB        blob
sha256.9b0dafaadb1cd1d   2021-07-24 14:37:56    90.46 MiB        library
sha256.cb37e547a142499   2021-07-23 18:10:22    55.39 MiB        library
b3e2e47d016c08b3396b5e   2021-07-23 18:20:29    26.45 MiB        oci-tmp
Run Code Online (Sandbox Code Playgroud)

相对

$ docker image list
REPOSITORY               TAG        IMAGE ID       CREATED         SIZE
foxy-moveit2-tutorials   latest     ca302410c537   3 weeks ago     5.09GB
foxy-moveit2             latest     ba2e29d36a81   3 weeks ago     4.85GB
ros                      galactic   717c275e4609   5 weeks ago     675MB
ros                      foxy       5459f09fa2f1   5 weeks ago     723MB
devrt/xserver            latest     31e1d3e1887d   13 months ago   293MB
Run Code Online (Sandbox Code Playgroud)

另一种方法是定义一个放置所有拉取图像的特定目录,并点亮其内容:

$ singularity pull --dir ~/singularity_images/ docker://ros:foxy
$ ls singularity_images/
ros_foxy.sif

Run Code Online (Sandbox Code Playgroud)

简而言之,奇点让您对已经下载的图像感到好奇,因为内容哈希缺乏语义意义。

tsn*_*lan 9

奇点等价docker image ls于ls *.sif。

这是 Docker 和 Singularity 之间的主要区别之一:一种集中收集所有组成员可用的本地映像的服务,而不是任何人都可以在安装了 Singularity 的任何计算机上运行的文件形式的映像。您显示的缓存列表也是特定于您的用户的(通常~/.singularity/cache),尽管构建操作最终会获得共享缓存,/root/.singularity/cache因为它们需要 sudo 权限。

docker image ls和之间的另一个重要区别singularity cache list是在清除奇点缓存后,您生成的 sif 仍然按预期工作。删除 docker 映像相当于删除该 sif 文件。

如果图像可能被其他人使用,则值得在文件系统上设置共享位置。通过这种方式,您还可以将有权创建图像的用户与只需要使用图像的用户分开。