为什么 docker 对奇点构建实施拉取率限制?

Why is docker enforcing pull rate limit for a singularity build?

我想了解 docker 拉取率限制是如何实施的。我正在执行以下操作:

singularity build my_img.sif Singularity

其中Singularity内容如下:

Bootstrap:docker
From:centos:7.4.1708

虽然我在过去六个小时内没有进行过一次拉取,但我得到了以下信息:

[root@rc-predict singularity]# singularity build my_img.sif Singularity
INFO:    Starting build...
FATAL:   While performing build: conveyor failed to get: Error reading manifest 7.4.1708 in docker.io/library/centos: toomanyrequests: 
You have reached your pull rate limit. 
You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit

为确保此限制不是来自 centos 帐户,我确认我可以独立执行以下操作:

docker pull centos:7.4.1708

其他人是否遇到过此 issue/know 修复?

我 运行 遇到过类似的问题。我在命令行上登录了 Docker(因此可以绕过速率限制),但是 Singularity 在没有身份验证的情况下调用了 Docker API。

您可以通过在命令前添加环境变量来告诉 Singularity 使用 Docker 进行身份验证:

SINGULARITY_DOCKER_USERNAME=<your username> SINGULARITY_DOCKER_PASSWORD=<your password> singularity build my_img.sif Singularity

有关详细信息,请参阅 this