Docker推送问题本地registryhttps访问权限被拒绝

我的registrydocker有问题。 我的“服务器”VM在kali-linux上。 我在HTTP中创build了registrydocker工具,并使用一个centOS VM作为客户端。 我宣布registry不安全的客户端虚拟机,它的工作完美。

现在我试着把它放在HTTPS中。 为了做到这一点,我使用nginx作为代理。 我遵循这个教程: 第5步 – 设置SSL除了第8部分 ,使之成为服务(我不知道为什么,但我不能做到这一点)。

因为我没有域名,所以我用了一个。 为了得到认可,我在两个虚拟机上的/ etc / hosts文件中添加了我的IP(192.168.XX)和我使用的域名(myregistryexemple)。

正如教程所问,我在我的“服务器”虚拟机(kali)上生成了证书,并通过scp将其发送给我的客户机虚拟机。 由于这个命令,我让centOS vm信任证书:

yum install ca-certificates update-ca-trust force-enable cp cert.crt /etc/pki/ca-trust/source/anchors/ update-ca-trust extract 

我重新启动客户端VM上的服务docker。 然后在我的kali虚拟机上启动docker registry和nginx代理“docker-compose up”。

我标记并尝试在registry中推送一个Ubuntu的:

 docker tag ubuntu myregistryexemple/ubuntu docker push myregistryexemple/ubuntu 

但是我得到这个错误:

 The push refers to a repository [docker.io/myregistryexemple/ubuntu] 56827159aa8b: Preparing 440e02c3dcde: Preparing 29660d0e5bb2: Preparing 85782553e37a: Preparing 745f5be9952c: Preparing denied: requested access to the resource is denied 

然后我尝试直接推送到本地主机:

 docker tag ubuntu localhost:5000/ubuntu & docker push localhost:5000/ubuntu 

然后我dockerlogin从客户端虚拟机的域名,它的工作,但是当我试图从我的域名registry中的客户端虚拟机,泊坞窗无法findregistry中的泊坞窗图像我试图推。

有人有什么想法,知道如何帮助我吗?

好,所以我find了一种方法来使其工作。

这很简单:Juste遵循我引用的完整教程( https://www.digitalocean.com/community/tutorials/how-to-set-up-a-private-docker-registry-on-ubuntu- 14-04#step-5%E2%80%94-setting-up-ssl )

创build存储库之后,在您推/拉泊坞映像之前。

您需要在/ etc / hosts上的客户端和服务器虚拟机上运行。

添加行:domainChosen serverVmIp

保存并退出它。

现在我们需要客户端来信任生成的证书。 为了做到这一点,你可以使用这个教程: http : //kb.kerio.com/product/kerio-connect/server-configuration/ssl-certificates/adding-trusted-root-certificates-to-the-server- 1605.html 。

然后重新启动您的registry和您的docker守护者。 而且你通常可以使用你的域名在https中推/拉你的registry。