minishift 上 openshift 客户端的权限问题
Permissions problems with openshift client on minishift
我已经用 cask 安装了 minishift,用 homebrew 安装了 openshift 客户端。
但是,作为开发人员用户,我无法从 openshift cli 创建项目、触发构建等。我总是遇到权限错误:
Error from server (Forbidden): User "developer" cannot list all project.openshift.io.projectrequests in the cluster
Error from server (Forbidden): User "developer" cannot list authorization.openshift.io.rolebindings in project "my_awesome_project"
Error from server (Forbidden): User "developer" cannot create build.openshift.io.buildconfigs/instantiatebinary in project "my_awesome_project"
但是,我可以从 UI 创建项目。如何从命令行授予开发人员用户权限?
我正在使用 MacOS High Sierra:
➜ minishift version
minishift v1.15.1+a5c47dd
➜ oc version
oc v3.9.0+191fece
kubernetes v1.9.1+a0ce1bc657
features: Basic-Auth
Server https://192.168.99.100:8443
openshift v1.5.0-rc.0+49a4a7a
kubernetes v1.5.2+43a9be4
您正在使用的 oc
版本 (3.9
) 与服务器 (1.5
/ 3.5
) 不兼容。使用较新版本的 Openshift 或将 oc
降级为 3.6
.
如果可能,您应该降级您的客户端或升级您的 minishift 版本以匹配,因为它们不是 100% API 兼容。
您可以轻松使用 minishift oc 二进制文件,这样您仍然可以在需要时保留您是其他客户端(也许您需要 运行 多个版本)。要做到这一点:
localhost# eval $(minishift oc-env)
这将执行:
export PATH="/Users/me/.minishift/cache/oc/v3.7.2/darwin:$PATH"
这样,您将始终使用与您的 minishift 实例相同的客户端版本。
我已经用 cask 安装了 minishift,用 homebrew 安装了 openshift 客户端。
但是,作为开发人员用户,我无法从 openshift cli 创建项目、触发构建等。我总是遇到权限错误:
Error from server (Forbidden): User "developer" cannot list all project.openshift.io.projectrequests in the cluster
Error from server (Forbidden): User "developer" cannot list authorization.openshift.io.rolebindings in project "my_awesome_project"
Error from server (Forbidden): User "developer" cannot create build.openshift.io.buildconfigs/instantiatebinary in project "my_awesome_project"
但是,我可以从 UI 创建项目。如何从命令行授予开发人员用户权限?
我正在使用 MacOS High Sierra:
➜ minishift version
minishift v1.15.1+a5c47dd
➜ oc version
oc v3.9.0+191fece
kubernetes v1.9.1+a0ce1bc657
features: Basic-Auth
Server https://192.168.99.100:8443
openshift v1.5.0-rc.0+49a4a7a
kubernetes v1.5.2+43a9be4
您正在使用的 oc
版本 (3.9
) 与服务器 (1.5
/ 3.5
) 不兼容。使用较新版本的 Openshift 或将 oc
降级为 3.6
.
如果可能,您应该降级您的客户端或升级您的 minishift 版本以匹配,因为它们不是 100% API 兼容。
您可以轻松使用 minishift oc 二进制文件,这样您仍然可以在需要时保留您是其他客户端(也许您需要 运行 多个版本)。要做到这一点:
localhost# eval $(minishift oc-env)
这将执行:
export PATH="/Users/me/.minishift/cache/oc/v3.7.2/darwin:$PATH"
这样,您将始终使用与您的 minishift 实例相同的客户端版本。