下面是对cf push
错误:
org.cloudfoundry.client.v2.ClientV2Exception: CF-InvalidRelation(1002): The app cannot be mapped to this route because the route is not in this space. Apps must be mapped to routes in the same space.
下面是清单文件:
applications:
- name: xyz-api
instances: 1
memory: 1G
buildpack: java_buildpack_offline
path: target/xyz-api-0.1-SNAPSHOT.jar
cf login x.y.z.w.org.cloud ....
cf push xyz-api -p target/xyz-api-0.1-SNAPSHOT.jar
我们有两个API终点:
a.b.c.d.org.cloud
x.y.z.w.org.cloud
按照调查,我们认识到,路线名称已经存在于a.b.c.d.org.cloud
因为我们的源代码是在任何API结束点硬编码相同的路线名称。
不能原路名被用于多个API终点?为什么?
默认情况下,CF推的路线分配给每一个应用程序
我不知道什么样的功能是省略了route
,也许是默认/
被分配到可能已采取在空间的另一应用程序的应用空间。
在Cloud Foundry的Gorouter的航线应用程序有一个地址,称为路由关联请求到应用程序。我们称这种关联的映射。使用CF CLI CF地图-route命令的应用程序和路由关联。
您可以运行cf routes
命令查看正在使用什么路线,
https://cli.cloudfoundry.org/en-US/cf/routes.html
你可以不带路径运行应用程序,随机路线,或提供一个路线
https://docs.cloudfoundry.org/devguide/deploy-apps/manifest.html#no-route
---
...
no-route: true
随机路线,
---
...
random-route: true
定义路线,
---
...
routes:
- route: example.com
- route: www.example.com/foo
- route: tcp-example.com:1234
https://docs.cloudfoundry.org/devguide/deploy-apps/manifest.html#routes
您可能要检查的路线文档的路径是什么更详细的解释。
https://docs.cloudfoundry.org/devguide/deploy-apps/routes-domains.html