singularity-container - 无法构建可写奇点容器

标签 singularity-container

我正在尝试使用命令sudo singularity build --writable my_container.img docker://image_name构建一个可写的奇点容器。 ,但我收到错误 Error for command "build": unknown flag: --writable .

我决定遵循 Singularity ( here ) 的指南来看看是否能找到我的问题。我正在使用命令 sudo singularity build --writable lolcow.img shub://GodloveD/lolcow ,但我遇到了同样的错误 Error for command "build": unknown flag: --writable .

我使用的是奇点版本 3.6.4。

有人知道会发生什么吗?

最佳答案

--writable 是运行选项。这是为了构建:

sudo singularity build lolcow.img shub://GodloveD/lolcow

对于运行:

singularity run --fakeroot --writable lolcow.img

您还需要 --fakeroot 在 root 可访问的位置写入。

但是,它并不持久。正如“正在将 SIF 文件转换为临时沙箱...”消息所提醒的那样。也就是说,您可以在 session 期间写入,但完成后它就消失了:

$ singularity shell -f --writable lolcow.img

INFO:    Converting SIF file to temporary sandbox...
WARNING: Skipping mount /etc/localtime [binds]: /etc/localtime doesn't exist in container
Singularity> echo test > /etc/banana
Singularity> cat /etc/banana
test
Singularity> exit
INFO:    Cleaning up image...

$ singularity shell -f --writable lolcow.img

INFO:    Converting SIF file to temporary sandbox...
WARNING: Skipping mount /etc/localtime [binds]: /etc/localtime doesn't exist in container
Singularity> cat /etc/banana
cat: /etc/banana: No such file or directory
Singularity>

对于用于测试/开发目的的持久写入,您可以使用 --sandbox 选项,但您也需要以 root 身份运行它:

$ sudo singularity build --sandbox lolcow.img shub://GodloveD/lolcow

$ sudo singularity shell --writable lolcow.img

WARNING: Skipping mount /etc/localtime [binds]: /etc/localtime doesn't exist in container
Singularity> echo test > /etc/banana
Singularity> cat /etc/banana
test
Singularity> exit

$ sudo singularity shell --writable lolcow.img
WARNING: Skipping mount /etc/localtime [binds]: /etc/localtime doesn't exist in container
Singularity> cat /etc/banana
test
Singularity> exit

关于singularity-container - 无法构建可写奇点容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65599721/

相关文章:

本地主机上没有 MPI 的容器中的 MPI

r - 防止 R 自动获取已安装软件包的最新版本?

go - 奇点3.6.2安装

Python - 如何获取有关 SyntaxError 的更多信息?

r - 从 Apt 存储库安装特定版本的 R

visual-studio - 使用 Visual Studio Code 远程启动 Singularity 容器

docker - Snakemake + docker 示例,如何使用卷

singularity-container - 奇点提取、编辑和重建图像