部署一个基于 Meteor 的 Web 和移动聊天服务器(1)
- UID
- 1066743
|
部署一个基于 Meteor 的 Web 和移动聊天服务器(1)
几个月前,我的大家庭中的成员建议我建立一个私人聊天服务器供我们自己的群体使用。我的开发人员好友也提出了类似的请求。但直到最近,我惯常的拖延和对安装和管理前景的争论延误了这一实施工作。但是最近,一个很诱人的机会促使我最终启动了我自己的私人聊天服务器。
在本教程中,您将复制我的运行和操作 Web 和移动聊天服务器的成功成果。您将使用 — 一个我经常参与的 (且基于 ) 的 MIT 授权项目。像我和我的朋友一样,您的小组可使用该聊天服务器来讨论问题,共享代码,一起工作和闲聊— 完全没有隐私问题或意料之外的宕机时间。甚至在临时休息和缺席期间,您也可使用 iOS 和 Android 客户端来与小组保持联系。
“使用 Rocket.Chat,只需占用您数分钟时间,即可在 Bluemix 上为您自己的团队或家人运行一个私人聊天服务器。”
需要的准备工作- 一个 Linux 或 Mac OS X 系统(Windows 也可能适合,但我没有测试它)
- (6.11.3 版或更高版本)
- (2.6.3 版或更高版本)
单击 Run the example server 按钮试验我托管在 Bluemix 上的一个示例群聊服务器。这个屏幕截图显示了 Web 聊天的实际应用:
第 1 步. 获取源代码在您的工作站上,运行:
git clone https://github.com/rocketchat/Rocket.Chat
将目录更改为 Rocket.Chat,创建一个名为 .cfignore 的文件,然后将下面这行添加到该文件中:
这一行告诉 Cloud Foundry CLI 在部署期间不要将 .meteor/local 目录的内容上传到 Bluemix,进而节省大量部署时间和带宽。
第 2 步. 构建服务器并将其推送到 Bluemix在这一步中,通过一个 将 Rocket.Chat 部署到 Bluemix,而无需启动服务器。(服务器需要设置一些环境变量才能运行;您将在 中设置它们。)
运行下面这个命令:
cf push your-app-name -b https://github.com/ind1go/bluemix-buildpack-meteor.git -m 512M --no-start
您必须为 your-app-name 选择一个唯一名称。您的命令输出应该类似于以下内容:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| Creating app singdevchat in org developerWorks / space Sing-Li as westmakaha@yahoo.com...
OK
Creating route singdevchat.mybluemix.net...
OK
Binding singdevchat.mybluemix.net to singdevchat...
OK
Uploading singdevchat...
Uploading app files from: /home/autoqa/github/Rocket.Chat
Uploading 3.3M, 1554 files
Done uploading
OK
|
第 3 步. 为服务器创建一个 MongoDB 实例作为 Meteor 应用程序,Rocket.Chat 需要一个 MongoDB 实例作为它的后备存储。您可从各服务提供程序获得一个实例,或者可以 。
两个具有 MongoDB 计划的流行的提供程序是 和 。我选择了一个 compose.io 计划并创建了一个名为 bluerocket 的数据库(您可为您自己的数据库使用任何名称)。
对于您创建的数据库,添加一个名为 rocketchat 的数据库用户并设置一个密码。
要将 Rocket.Chat 与 MongoDB 实例挂钩,您需要来自该提供程序的以下信息:
|
|
|
|
|
|