使用多个帐户的 OpenShift rhc 设置
Posted
技术标签:
【中文标题】使用多个帐户的 OpenShift rhc 设置【英文标题】:OpenShift rhc setup using multiple accounts 【发布时间】:2013-04-09 09:20:02 【问题描述】:我在 Openshift 平台上有两个帐户。如何设置我的计算机以便我可以使用rhc
管理它们?我在命令行参数中找不到任何相关选项。
【问题讨论】:
【参考方案1】:rhc
命令行工具带有全局选项 -l, --rhlogin LOGIN
。你有两个选择:
在每个命令中使用-l
标志来指定登录名:
rhc app create <appname> <cartridge> [-l <login1/login2>]
在会话之间运行rhc setup -l LOGIN
。完成从一个帐户管理应用程序后,您可以通过运行 rhc account logout
来结束它的会话。
rhc setup -l <login1> # First account's login
rhc app create <appname> <cartridge>
rhc logout
rhc setup -l <login2> # Second account's login
rhc app create <appname> <cartridge>
rhc logout
当您可以使用rhc setup
命令时,用户名信息将存储在.openshift/express.conf
文件中;因此,当您要切换帐户时需要再次运行它。
【讨论】:
当你说<login>
时,它到底是什么意思??...用户名?? OR密码??...我认为最好让我们清楚您的意思是<openshift-username>
那么你如何切换账户呢?我在 rhc 帮助中找不到任何指示注销后如何登录的内容【参考方案2】:
命令行还支持--conf
- 您可以在其中传递文件。您始终可以通过 shell 脚本为命令设置别名。
【讨论】:
【参考方案3】:相当老的问题,但我使用了另一种似乎更舒服的解决方案(至少对我来说) - 环境变量 OPENSHIFT_CONFIG
。
OPENSHIFT_CONFIG
环境变量 can be used 覆盖 OpenShift 配置名称(默认为“express”)。设置时使用 rhc 执行的操作指的是~/.openshift/$OPENSHIFT_CONFIG.conf
(而不是~/.openshift/express.conf
)。
要切换到另一个 OpenShift 帐户,可以使用以下命令 (Bash):
export OPENSHIFT_CONFIG=thenewone
rhc apps //apps on the new account
...
unset OPENSHIFT_CONFIG
rhc apps //apps on the default account
已通过 rhc 1.37.1 验证,但应适用于 2013 年 5 月之后发布的任何版本。
【讨论】:
【参考方案4】:第一次运行rhc setup
命令时,会创建~/.openshift/express.conf
文件,其中包含初始服务器配置的设置。当您添加另一台服务器或使用--server
选项再次运行rhc setup
命令时,将创建~/.openshift/servers.yml
文件,其中包含每个服务器的设置。您可以编辑此文件以对服务器配置进行任何更改,这优先于初始 ~/.openshift/express.conf
文件。
rhc server use server.name.example.co
rhc server use Server_Nickname
更多信息here
【讨论】:
【参考方案5】:使用rhc setup -l <login>
。这里login
是您注册的OpenShift 帐户的email address
。
【讨论】:
【参考方案6】:在 Windows 上,像我一样运行这些命令并做出响应(用 <
和 >
表示):
rhc setup -l login@domain.mail.com
Enter the server hostname: <openshift.redhat.com>
Password: <**********><Press Enter>
Generate a token now? (yes|no) y<Press Enter>
Generating an authorization token for this client ... lasts about 1 month
Saving configuration to C:\Users\UserName\.openshift\express.conf ... done
您的私有 SSH 密钥文件应设置为仅供您自己阅读。要进行此更改,请运行:
chmod 600 C:\Users\<Your Username>\.ssh\id_rsa
您的客户端工具现已配置完毕。
然后,您可以长时间使用控制台命令,并为您的 OpenShift 登录生成令牌。
【讨论】:
【参考方案7】:您可以使用server add
命令配置多个帐户,然后您可以使用--server
选项在所有后续命令中提供服务器昵称。例如:
rhc server add -l <first_account> --nickname srv1 <first-server>
rhc server add -l <second_account> --nickname srv2 <second-server>
您可以添加-p, --use-authorized-tokens
之类的选项来禁止提示密码和令牌生成。如果需要,也可以--insecured
rhc server use srv1
rhc server use srv2
上面的命令执行某种初始化。完成上述两个步骤后,您就可以使用多个帐户了。
现在在您的rhc
命令中,您需要指定应该使用哪个服务器。例如:
rhc app-show -n <domain> <app> --server srv1
上面的命令将在srv1
中显示应用程序的详细信息。对于srv2
,您可以运行
rhc app-show -n <domain> <app> --server srv2
【讨论】:
以上是关于使用多个帐户的 OpenShift rhc 设置的主要内容,如果未能解决你的问题,请参考以下文章