我在这里感觉很愚蠢。我希望K8s从本地注册表中提取Docker映像,以确保我的开发周期尽可能快。
我已根据the instructions设置了本地注册表,并且正在使用不安全的注册表。我已经将图像推送到其中,并通过使用VS Code的Docker扩展在其内部进行查看来确认它们位于注册表中:
我真的不知道该使用localhost
,$MACHINE_NAME
还是$LOCAL_IP_ADDRESS
,所以我全部使用了这三个。
我可以通过命令行从这些注册表中成功提取图像。但是,当K8(通过minikube运行)尝试拉动时,它将失败:
无法提取映像“ localhost:5000 / service1”:rpc错误:代码=未知desc =来自守护程序的错误响应:获取http://localhost:5000/v2/:拨打tcp 127.0.0.1:5000:connect:连接被拒绝
这是为什么,我该如何纠正?
答案 0 :(得分:1)
您可能想阅读此博客,其中提供了有关如何在minikube上设置注册表的详细信息。
https://blog.hasura.io/sharing-a-local-registry-for-minikube-37c7240d0615/
这里的想法是让minikube上的docker守护程序能够从名为localhost:5000的注册表中提取。这是通过在minikube上实际运行注册表,然后设置代理以使minikube VM端口5000映射到注册表的5000来实现的。