我有两台电脑都有码头,我想保持我的码头形象,我对另一个主机,不连接到互联网,但是在本地局域网。
这是我的机器(我使用了hello-world图像示例)
macHost:~ ciasto$ docker tag hello-world 192.168.0.6:5000/hello-world然后我尝试docker push 192.168.0.6:5000/hello-world
但这会导致错误:
The push refers to a repository [192.168.0.6:5000/hello-world]
Get https://192.168.0.6:5000/v2/: dial tcp 192.168.0.6:5000: getsockopt: connection refused所以我尝试了没有5000端口。
$ docker push 192.168.0.6/hello-world-2这也会引发同样的错误:
The push refers to a repository [192.168.0.6/hello-world-2]
Get https://192.168.0.6/v2/: dial tcp 192.168.0.6:443: getsockopt: connection refused我做错什么了?
发布于 2018-09-01 19:16:59
码头注册处是一种特定的软件;您不能直接将图像docker push到另一个系统。
最好的工作流程几乎肯定是编写一个描述如何构建映像的Dockerfile。这是一个简单的文本文件,与shell脚本完全不同,您通常会将其添加到源代码存储库中。然后,在另一个系统上,您可以签出存储库并运行docker build,并获得一个功能等效的映像。
如果你有一个半隔离的网络,你可以运行你自己的注册表。假设您设置了本地DNS,使主机名my-registry.local解析为192.168.0.123;然后您可以将本地映像解析为my-registry.local/me/imagename,将它们从一个系统中分离出来,并将它们从另一个系统中进行docker pull。
最低的维护,最少的重复性,最高的长期努力路径是在第一个系统上docker save图像,scp或者以其他方式将它转移到第二个系统,然后在那里docker load它。如果你有动力,你甚至可以一步一步地去做
docker save me/imagename | ssh elsewhere docker load如果“他处”系统实际上与网络断开连接,而“将其复制到另一个系统”步骤涉及将图像文件复制到可移动媒体上,您将被迫这样做。但是,如果您经常这样做,或者有多个目标系统,您可能会发现建立一个本地注册中心是一项很好的投资。
https://stackoverflow.com/questions/52127912
复制相似问题