17

我想从 dockerfile 构建奇异容器。

我已经从 docker hub 提取并运行了 docker 镜像,具有奇异性。

singularity pull docker://ubuntu:latest

我还从奇异配方文件构建了图像。

singularity build  cpp.sif singularity_file

但我想从 dockerfile 构建奇点图像。

任何人都知道该怎么做。可能吗 ???

4

3 回答 3

21

您不能直接从 Dockerfile 构建奇异容器,但可以分两步完成。

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

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

于 2020-02-20T09:44:04.270 回答
10

您可以使用 Singularity Python 将 Dockerfile 转换为奇异配方或反之亦然。Singularity Python 提供了一些非常有用的实用程序,如果您打算经常使用奇异性,请考虑安装它

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中的描述拉一个容器。在此处查找有关配方转换 的更多信息

于 2021-03-05T20:22:03.453 回答
-5
sudo singularity build ubuntu.sif docker://ubuntu:latest

直接为我构建

不确定是否为此目的更新了奇点

于 2021-12-03T18:26:29.760 回答