我有一个cloudfoundry webservice应用程序,最近它从公共域移动到内部域(apps.internal),它看起来内部应用程序应该在端口8080上。但是,如果我有另一个运行公共领域的应用程序,则需要将用户提供的服务设置为访问8080端口。
基于文档:https://cli.cloudfoundry.org/en-US/v6/create-user-provided-service.html
只能设置url,用户名,密码,但是没有端口选项。网址"https://>:8080"是不可接受的,因为就像文件上提到的:https://docs.cloudfoundry.org/devguide/deploy-apps/routes-domains.html
应用程序的内部域http路由只能在80或443上。
任何输入将是感激的,简而言之,只是问题,如何创建用户提供的服务的应用程序运行在内部域。
谢谢,杰森
创建和映射路由时,不需要指定端口。对于内部域,您可以将其理解为为您的路由启用DNS解析。DNS只是将主机/域映射到内部IP。这与端口无关。
实际通信使用的端口需要通过网络策略启用。默认策略是拒绝一切,所以如果你不添加一个网络策略来允许流量,不管端口是什么(包括80/443),它都会失败。
这意味着您的服务和消费客户端需要在使用的端口上进行协调。您需要使用网络策略打开端口,但您还需要指示服务和客户端使用哪些端口。
由于您使用的是用户提供的服务,因此您可以只在其中包含端口信息。
cf cups -p url,username,password
并在您指定的URL中包含端口,或者您可以包含单独的port
属性并单独传递端口。您所做的可能取决于您将绑定服务的客户端。对他们来说最容易的。许多语言都可以从字符串(包括端口)解析URL,所以这通常是最简单的。如果您的语言不能解析URL,您可以使用端口的单独属性。还是那句话,只要最适合你的应用。