绑定在Dockerregistry上的位置会导致超时

我在Mac上使用Docker,并且在registry服务器上绑定一个位置时遇到了一些麻烦 – 我希望这里有人能够提供帮助。

谢天谢地,这个问题很简单。 比方说,我想运行一个简单,不安全的dockerregistry。 首先,我确保将相应的ip:portnoinput到“不安全registry”列表中。 根据文档,然后运行docker run -d --restart=always --name registry -e REGISTRY_HTTP_ADDR=0.0.0.0:5000 -p 5000:5000 registry:2

当我这样做时,registry“正常工作”。 我可以将图像标记为10.0.3.59:5000/imgname ,并正常推拉。

但是,我希望registry的数据位于主机系统的特定位置,比如/mnt/registry 。 我去泊坞窗首选项,确保在mnt文件夹上启用共享,并删除旧的图像和容器

再次docker run -d --restart=always --name registry -v storage:/var/lib/registry/ -e REGISTRY_HTTP_ADDR=0.0.0.0:5000 -p 5000:5000 registry:2 。 但是,如果我现在尝试执行docker push 10.0.3.59:5000/imgname ,则会收到以下消息

 The push refers to a repository [10.0.3.52:5000/cropspokyimage] 74146a4cf164: Retrying in 9 seconds 6c45ce1e774e: Retrying in 9 seconds 0914c5636fb4: Retrying in 9 seconds f859b8ada191: Retrying in 9 seconds b2d02a400fe3: Retrying in 9 seconds fc0e50be166d: Waiting a8cfe888247e: Waiting e745d991dded: Waiting 7b08edaa4533: Waiting 01b4d034aab5: Waiting d0c686d0df68: Waiting 9deb78b26d56: Waiting 0566c118947e: Waiting 6f9cf951edf5: Waiting 182d2a55830d: Waiting 5a4c2c9a24fc: Preparing cb11ba605400: Waiting 

大约一分钟左右的等待,它终于打印以下错误,并终止received unexpected HTTP status: 500 Internal Server Error

显然,这使我没有一些想要的function。 任何人都可以帮我find解决办法吗?

这里有一些问题。 首先是我为卷安装的目录有错误的权限,所以docker无法写入。 一个cmod 777固定的。

使用docker logs命令检查registry的日志是至关重要的。

检查日志还显示,当用户尝试添加时, restrict-useradd脚本已经发生错误,因此添加了一个|| 0 || 0到脚本修复的返回值。 这也是restrict-groupadd一个问题