本地网络中的docker专用注册表

本地网络中的docker专用注册表,docker,docker-registry,Docker,Docker Registry,我已经为docker建立了一个私有注册中心,所有的东西都可以从外部运行(我有一个带有多个VM的服务器,其中一个是reposiotry) 从我的电脑上,我可以做docker登录-u USER-p PASS repo.mydomain.com,效果非常好 现在,如果我在另一个vm内部执行相同的操作,我将从daemon:get返回错误响应https://repo.mydomain.com/v1/users/: 拨打tcp 10.236.8.111:443:getsockopt:连接被拒绝 似乎repo

我已经为docker建立了一个私有注册中心,所有的东西都可以从外部运行(我有一个带有多个VM的服务器,其中一个是reposiotry)

从我的电脑上,我可以做
docker登录-u USER-p PASS repo.mydomain.com
,效果非常好

现在,如果我在另一个vm内部执行相同的操作,我将从daemon:get返回
错误响应https://repo.mydomain.com/v1/users/: 拨打tcp 10.236.8.111:443:getsockopt:连接被拒绝

似乎
repo.mydomain.com
在本地(机器内部)IP上解析,然后存储库挂起或不允许连接通过。或者其他我现在不知道的原因


如何使其工作?

因此,解决方法是将其用作不安全的docker存储库,因为内部通信在本地网络内。为此:

  • 编辑
    /etc/docker/daemon.json
    添加
    {“不安全的注册表”:[“repo.mydomain.com:5000”]}
  • 重新启动docker
    服务docker重新启动
  • 使用端口5000进行登录
    docker login-u USER-p PASS repo.mydomain.com:5000
现在显示登录成功。想知道是否有更好(更干净)的方法

PS:要提取数据,必须使用
repo.mydomain.com:5000/image