我在OpenShift Online(Starter Plan,美国弗吉尼亚州服务器)上成功安装了Java Web应用程序(使用MySQL Persistent服务)。运行时是Tomcat。我设法从外部Git存储库构建WAR(此外还通过ssh身份验证)并将应用程序部署到容器中。它可以从自动生成的路由到达,但是我在设置链接到www域的自定义新错误时遇到了奇怪的错误。这是消息:
路由无效:spec.host:禁止访问:您无权设置路由的主机字段。
我认为这是一个平台错误,但不知道如何解决(如果可能的话)。有什么好主意吗?非常感谢提前。
答案 0 :(得分:3)
这是非启动(Pro)计划的支持自定义域。使用入门计划,您无法指定域名。
答案 1 :(得分:2)
我在OKD 4上收到相同的错误消息。
禁止访问:您无权在入口规则中设置主机字段
根本原因是由路由管理的入口以及需要额外ClusterRole设置来更新这些字段的路由。
Allow route spec.host to be controlled by permission在2017/3合并
因此,我们需要为要更新入口的服务帐户添加额外的权限
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: foobar-openshift-ingress
rules:
- apiGroups: ["route.openshift.io"]
resources: ["routes", "routes/custom-host"]
verbs: ["create", "patch"]
将此ClusterRole绑定到您的服务帐户,一切正常。