我想免费获得一个 IRC 弹跳器,但我不相信市面上有许多免费的 IRC 弹跳器服务。经过一番搜索,我发现喊,一个用于浏览器的 Node.js IRC 客户端。Shout 有一些非常有趣的功能;其中,有两个我特别感兴趣:
- 始终保持连接。我可以每天24小时在线。
- 跨平台。我可以使用任何有 Web 浏览器的平台连接到我的 IRC 客户端。
最重要的是,它看起来非常漂亮,并且可以通过 CSS 设置主题。
现在我需要某种服务,让我的 Shout 实例 24/7 全天候运行,并允许我连接到它。哦,我还想免费获得它。
这是哪里OpenShift开始发挥作用。他们的免费帐户应该足够了。此外,由于他们提供 SSL,因此应该可以安全地连接到 Shout。那么问题是:如何将我的 Shout 实例部署到 OpenShift?(也就是说,如何免费获得安全、始终在线的 IRC 弹跳器?)
答案1
- 创建 OpenShift 免费帐户。最基本的帐户就足以满足我们的目的。
- 登录您的 OpenShift 账户。
- 创建新的 Node.js 应用程序。
- 转到 OpenShift 控制台中“应用程序”选项卡中的“添加应用程序”按钮。
- 从“其他类型”中选择 Node.js 墨盒。
- 填写适当的字段,包括公共 URL 字段。当您想要连接到 Shout 时,您需要将浏览器指向此 URL。
- 转到“应用程序”选项卡,然后选择您新创建的应用程序。
- 复制“源代码”标题下的 URL。这是您要克隆的 URL。OpenShift 基于 Git。
- 转到终端并运行
git clone <URL>
,<URL>
你刚从页面复制的 URL 在哪里.这将为您的应用程序克隆一个已经成熟的存储库。 - 删除在存储库
rm -rf .
目录中运行的该存储库中的所有文件。虽然那里的文件对于您自己的应用程序来说是一个很好的起点,但我们不会使用它们,因为我们所需要的都在 Shout 的存储库中。 - 使用以下命令将 Shout 的存储库克隆到文件系统的其他位置
git clone https://github.com/erming/shout
。 - 从应用程序目录中运行
git pull <Shout's dir>
. 这应该会将 Shout 存储库中的所有文件填充到您的应用程序存储库中。 更改
package.json
文件. 使属性start
下的成员scripts
看起来像这样:"start": "node index --private --home $OPENSHIFT_DATA_DIR/shout/ --host $OPENSHIFT_NODEJS_IP --port $OPENSHIFT_NODEJS_PORT",
告诉 OpenShift 它必须使用
npm start
来运行我们的应用程序。为此,在应用程序目录中,运行mkdir -p .openshift/markers
,然后运行touch .openshift/markers/use_npm
。- 提交所有更改,然后执行
git push origin master
。
部署完成后,您应该能够转到应用程序的公共 URL 并在那里看到 Shout。
重要的:如果你想安全起见,可以使用以下方式访问你的公共 URL:https而不是http。更改协议前缀应该足以使其工作,因为OpenShift 提供*.rhcloud.com
通配符证书允许您使用应用程序的 OpenShift 提供的主机名 URL 进行安全地连接。