【发布时间】:2013-04-09 09:20:02
【问题描述】:
我在 Openshift 平台上有两个帐户。如何设置我的计算机以便我可以使用rhc 管理它们?我在命令行参数中找不到任何相关选项。
【问题讨论】:
标签: ssh installation openshift ssh-keys openshift-client-tools
我在 Openshift 平台上有两个帐户。如何设置我的计算机以便我可以使用rhc 管理它们?我在命令行参数中找不到任何相关选项。
【问题讨论】:
标签: ssh installation openshift ssh-keys openshift-client-tools
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>
命令行还支持--conf - 您可以在其中传递文件。您始终可以通过 shell 脚本为命令设置别名。
【讨论】:
相当老的问题,但我使用了另一种似乎更舒服的解决方案(至少对我来说) - 环境变量 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 月之后发布的任何版本。
【讨论】:
第一次运行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
【讨论】:
使用rhc setup -l <login>。这里login 是您注册的OpenShift 帐户的email address。
【讨论】:
在 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 登录生成令牌。
【讨论】:
您可以使用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
【讨论】: