如何在Mac中用minikube部署在本地运行的Docker Registry中的镜像?
在Mac上安装minikube,运行了registry容器并把应用程序push上去。
$ curl http://localhost:5000/v2/_catalog
{"repositories":["app1"]}
在kubernetes的部署配置文件中:
...
spec:
replicas: 3
template:
metadata:
labels:
app: app1
tier: backend
spec:
containers:
- image: localhost:5000/app1
name: app1
...
dashboard的Pods中出现错误:
Failed to pull image "localhost:5000/app1": rpc error: code = 2 desc = Error while pulling image: Get http://localhost:5000/v1/repositories/app1/images: dial tcp 127.0.0.1:5000: getsockopt: connection refused
Error syncing pod
从这个看到了解决办法:
换了docker-machine:
eval $(minikube docker-env)
在执行这一步时:
kubectl port-forward --namespace kube-system \
$(kubectl get po -n kube-system | grep kube-registry-v0 | \
awk '{print $1;}') 5000:5000
一直pending没反应:
Forwarding from 127.0.0.1:5000 -> 5000
为什么?怎么做?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这样做:
启动minikube:
把本地docker images打tag带上Kubernetes IP:
在本地
insecure registries
里加入:192.168.99.100:5000
推动到Kubernets的registry里:
查看K8S的registry:
切换docker machine到minikube:
进行部署编排操作。镜像访问:
192.168.99.100:5000/app1[:tag]
有用的资源