0

我正在尝试使用以下命令公开 docker-registry:

# oc expose service docker-registry --hostname=<hostname> -n default

来源:https ://docs.openshift.com/container-platform/3.3/install_config/registry/securing_and_exposing_registry.html#access-insecure-registry-by-exposing-route

但是,对于我登录的当前用户,我在输出中遇到“禁止”消息的权限问题。用户具有“管理员”权限。我是 OpenShift 新手,仍在学习。有人可以为我指出如何使用上述命令公开注册表服务的正确方向吗?看起来我可能需要“集群管理员”访问权限才能执行此操作,但不确定如何更改或添加当前用户的角色。

4

1 回答 1

1

你的admin角色是针对什么项目?基本上,admin角色被授予一个项目的权限。如上所述,您需要cluster-admin集群角色才能oc expose servicedefault项目中使用创建路由。或者您是项目所需admin的角色default。每个命令如下授予每个角色。

您还需要cluster-admin角色来运行以下两个命令。

// for instance, the following command is granting cluster-admin role to admin.
$ oc adm policy add-cluster-role-to-user cluster-admin admin

// following command is granting admin of default project role to admin.
$ oc adm policy add-role-to-user admin admin -n default

如果您可以system:admin在通过 ssh 以 root 身份访问 master 主机后登录,您可以获得cluster-admin角色。

# oc login -u system:admin --config /etc/origin/master/admin.kubeconfig

我希望它对你有帮助。

于 2020-02-25T12:50:16.790 回答