如何将默认dockerregistry从docker.io更改为我的私有registry
默认情况下,如果我发出命令:
sudo docker pull ruby:2.2.1
它会默认从docker.io官方网站拉。
Pulling repository docker.io/library/ruby
如何将其更改为我的私人registry。 这意味着如果我问题
sudo docker pull ruby:2.2.1
它会从我自己的私人registry中拉出,输出是这样的:
Pulling repository my_private.registry:port/library/ruby
更新:在您的评论之后,目前无法更改默认registry,请参阅此问题以获取更多信息。
你应该能够做到这一点,将主机和端口replace为你自己的:
docker pull localhost:5000/registry-demo
如果服务器是远程的/有auth你可能需要login到服务器:
docker login https://<YOUR-DOMAIN>:8080
然后运行:
docker pull <YOUR-DOMAIN>:8080/test-image
由于这个问题还没有真正回答…
你可以使用'–add-registry'标志来使用红帽的docker分支,或者你可以用registry / config.go自己build立docker来修改你自己的硬编码默认registry命名空间/索引。
看来它不会被支持,因为它会在社区内创build碎片(即两个用户将得到不同的图像拉ubuntu:latest
)。 您只需在图像名称前添加主机。 看到这个Github的问题join讨论。
(请注意,这不是一个有意见的评论,只是在提到的github问题中可以遵循的讨论的一个非常简短的总结。)
早些时候,这可以通过在Ubuntu 14:04上运行的/etc/default/docker
DOCKER_OPTS
configuration文件中使用DOCKER_OPTS
来实现, DOCKER_OPTS
在Ubuntu 15:04上有一些问题 。 不知道这是否已经修复。
下面的代码需要进入运行docker守护进程的主机上的文件/etc/default/docker
。 指向私有registry的更改将安装在本地networking中。 注意:您需要重新启动Docker服务,然后进行此更改。
DOCKER_OPTS="--insecure-registry <priv registry hostname/ip>:<port>"
如果您使用的是Fedora发行版,则可以更改该文件
/etc/containers/registries.conf
添加域名docker.io