如何从dockerfile构造奇异容器

2sbarzqh  于 2023-01-04  发布在  Docker
关注(0)|答案(3)|浏览(204)

我想从dockerfile构建奇点容器。
我已经从码头中心用奇点提取并运行了码头图像。

singularity pull docker://ubuntu:latest

我还建立了从奇点食谱文件的形象。

singularity build  cpp.sif singularity_file

但是我想从dockerfile构建奇点图像。
任何人都知道怎么做。有可能吗???

vh0rcniy

vh0rcniy1#

您不能直接从Dockerfile构建奇点容器,但可以通过两步过程来完成。

docker build -t local/my_container:latest .
sudo singularity build my_container.sif docker-daemon://local/my_container:latest

使用docker://my_container查找Docker Hub上的容器。当您使用docker-daemon时,它会查找您本地构建的Docker容器。您也可以在奇点定义文件中使用Bootstrap: docker-daemon

  • 编辑:* singularity和apptainer现在都需要一个显式的标记名作为源代码docker容器。
lvmkulzt

lvmkulzt2#

你可以使用SingularityPython将一个Dockerfile转换成一个singularityrecipe,反之亦然。SingularityPython提供了一些非常有用的工具,如果你打算经常使用singularity,可以考虑安装它

pip3 install spython # if you do not have spython install it from the command line

# print in the console
spython recipe Dockerfile

# save in the *.def file
spython recipe Dockerfile &> Singularity.def

如果你在pip上遇到问题,你可以下载spython或者像Singularity Python install中描述的那样提取一个容器。

xlpyo6sf

xlpyo6sf3#

sudo singularity build ubuntu.sif docker://ubuntu:latest

直接为我构建
不确定是否为此目的更新了singularity

相关问题