我有一台Linux构建机器,我也安装了minikube。在minikube实例中,我已经安装了artifactory,用于存储各种构建工件。
现在,我希望能够在开发机器(它是与Linux构建机器相同的网络上的一台无关的膝上型计算机)上做一些工作,并将一些已构建的工件推入到工件中。
不过,我不知道怎么去工匠。当我从ssh到Linux服务器并检查minikube服务时,我可以看到工件实例运行在一个192.168地址上。
有什么办法在windows机器上公开它(访问它)吗?或者,这是不可能的,我应该只在Linux机器上安装工件,而不是在小型机上安装?
发布于 2018-02-11 02:32:49
是的,我们需要一个入口控制器(如nginx)来公开kubernetes服务以进行外部访问。
有三种方法可以使用每个https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services---service-types使用kubernetes创建nginx入口服务,并公开它以供外部访问:
LoadBalancer服务类型,它自动设置ExternalIP。这是当有一个外部非K8s,云提供商的负载平衡器,如CGE,AWS或Azure,并且这个外部负载均衡器将提供ExternalIP的nginx入口服务。ExternalIPs / https://kubernetes.io/docs/concepts/services-networking/service/#external-ips.NodePort。在这种方法中,可以使用NodeIP:NodePort/url/of/ the /service从集群外部访问服务。除了nginx入口控制器之外,您还需要一个入口资源。有关示例,请参阅https://github.com/nginxinc/kubernetes-ingress/tree/master/examples/complete-example。
请记住,Minikube是一个小VM,默认情况下带有一个小的停靠注册中心。因此,可能不可能在Minikube中存储大量的构建工件。
发布于 2018-02-09 18:28:14
为您提供工匠服务
$ minikube service <artifactory-service> -n <namespace>或者获取URL
$ minikube service <artifactory-service> -n <namespace> --url如果您想从远程访问,您需要做其他的事情。
假设,当您运行minikube service <artifactory-service> -n <namespace> --url时,您将得到以下结果
http://192.168.99.100:30654您可以使用这个URL访问minikube中的工件。但不能从遥控器进入。
现在这样做,公开端口30654
ssh -i ~/.minikube/machines/minikube/id_rsa docker@$(minikube ip) -L \*:30654:0.0.0.0:30654您将能够从其他网络访问。
发布于 2018-02-11 01:32:43
最后,为了使其工作,我在minikube上设置了入口,然后通过主机文件中的条目和作为反向代理的nginx设法使事情正常工作。
https://stackoverflow.com/questions/48711704
复制相似问题