缓存/存储 OpenShift 的登录信息



我正在编写一个脚本,将内容从虚拟机上的本地目录复制到 OpenShift 容器。

脚本工作正常。我的一个抱怨是,每次运行脚本时,我都需要使用 oc login 的交互部分来验证我的用户,如下所示:

oc login https://url.to.openshift
Authentication required for https://url.to.openshift:port (openshift)
Username: sampleUser
Password: samplePass

我知道我可以像这样运行命令:

oc login --username=sampleUser --password=samplePass oc login --token='sampleGeneratedTokenFromOpenShift'

我宁愿脚本中没有硬编码的用户/通行证或令牌。

有没有办法将我的用户的默认凭据存储在配置文件中以用于oc login

我发现标准方法是创建一个服务帐户,并使用生成的令牌作为oc login命令的一部分。

服务帐户创建命令:
$ oc create sa <user>

然后,需要将服务帐户添加到具有特定角色的项目中。

将角色添加到用户命令:

$ oc policy add-role-to-user <role> system:serviceaccount:<project>:<user>

应创建服务帐户并在项目中具有角色。在登录命令中添加服务帐户生成的密钥中的令牌。

oc login --token=generatedServiceAccountToken

最新更新