如何使用Horizon一键安装映像

DigitalOcean的Horizon一键式应用提供了上手的Horizon,让你的RethinkDB供电项目启动和运行的简便方法。随着[Horizon](http://horizo​​n.io/),[RethinkDB](http://rethinkdb.com/),和Node.js的所有预安装,一键是构建应用程序的理想基地。本教程会给你你需要让你的项目离地面的所有细节。

介绍

DigitalOcean的Horizo​​n One-Click应用程序提供了一种方便的方式来开始使用Horizo​​n并让您的RethinkDB-powered项目启动并运行。 随着HorizonRethinkDB和Node.js的所有预安装,一键是构建应用程序的理想基地。 本教程将给你所有的细节,让你的项目离开地面。

Horizo​​n是用于构建实时应用程序的开源开发人员平台。 它包括一个中间件服务器,它连接到RethinkDB并公开一个API以及一个JavaScript客户端库,允许前端开发人员存储文档和订阅流数据。 使用RethinkDB和websockets,Horizo​​n旨在使开发人员能够轻松地使用现代的实时应用程序,而无需编写后端代码。 对于一个完整的破败,看到他们在horizo​​n.io文档

除了标准的Ubuntu 14.04 Droplet,Horizo​​n一键式应用程序还包括以下组件:

  • Horizon
  • RethinkDB
  • Node.js
  • Nginx

为方便起见, git软件包安装在图像上。

创建Horizo​​n Droplet

您可以通过飞沫创建过程中, 应用程序菜单14.04与RethinkDB选择Horizon推出一个新的Horizon的实例:

控制面板

一旦创建了Droplet,通过DigitalOcean控制面板或SSH中的基于Web的控制台连接到Droplet:

ssh root@your.ip.address

访问RethinkDB

Horizo​​n一键式应用程序预配置了RethinkDB。 它是基于Web的管理面板位于Nginx逆向代理后面。 这允许它受密码保护。 密码是在首次启动时随机生成的,并且可以在每天通过SSH登录服务器时显示的消息(MOTD)中找到。 MOTD应该看起来像这样:

MOTD
----------------------------------------------------------------------
Thank you for using DigitalOcean's Horizon/RethinkDB Application.

Your RethinkDB dashboard can be accessed at http://111.111.11.111:8080/

Your RethinkDB login credentials are:
Username: admin
Password: 51PwBG3saQ

----------------------------------------------------------------------

要从MOTD中删除此信息,请运行:

sudo rm -f /etc/motd.tail

您可以更改密码admin运行用户:

sudo htpasswd -cb /etc/rethinkdb/.htpasswd admin my-new-password

Horizo​​n入门

Horizo​​n目前包括三个主要组件:

  • 连接到RethinkDB并提供客户端API和WebSocket端点的中间件服务器
  • 用于应用程序的客户端库
  • 一个命令行工具, hz

创建项目

hz可以用来生成一个项目模板,并为你的Horizon应用程序。 要为您的第一个应用程序生成脚手架,请运行:

hz init myapp

这就产生了一个示例配置文件和项目结构myapp目录。 仔细看看,你会发现:

cd myapp
tree -aF
.
├── dist/
│   └── index.html
├── .hz/
│   └── config.toml
└── src/

3 directories, 2 files

.hz/config.toml是项目的配置文件。 有关它的内容的更多详细信息,请参阅Horizo​​n的文档

dist/index.html包含了简单的连接到Horizon服务器,以验证它正在一个示例应用程序。

<!doctype html>
<html>
  <head>
    <meta charset="UTF-8">
    <script src="/horizon/horizon.js"></script>
    <script>
      var horizon = Horizon();
      horizon.onReady(function() {
        document.querySelector('h1').innerHTML = 'myapp works!'
      });
      horizon.connect();
    </script>
  </head>
  <body>
   <marquee><h1></h1></marquee>
  </body>
</html>

为您的项目服务

以满足您的Horizo​​n项目的最快方法是使用命令hz serve --dev --bind all 现在,当您浏览到http:// droplet.ip.add :8181应该会看到一个消息,表明应用程序成功连接到服务器的Horizon:

有用!

为了更好地理解这个命令的作用,让我们分解一下。 默认情况下, hz serve只会在本地主机上应用。 为了予以公布,我们使用--bind all标志。 --dev标志结合了一些单独的设置为一个标志,以提供一个便捷的方式,以满足您的应用程序,同时发展。 这相当于使用以下标志:

目的
- 安全号 不提供加密,无需提供SSL证书
--start-rethinkdb是 启动一个独立的RethinkDB实例与数据存储中的rethinkdb_data/
--auto-create-tables yes 在RethinkDB中自动创建表
--auto-create-indexes yes 在RethinkDB中自动创建索引
--serve-static ./dist 从提供静态内容dist/

这些默认值让您快速启动和运行,但不应在生产环境中使用。

要连接到已经运行的RethinkDB实例而不是开发实例,可以使用:

hz serve --dev --bind all --start-rethinkdb no --connect localhost

保持最新

Horizon安装全系统通过节点包管理器, npm 为了更新到最新版本,只需运行:

sudo npm update -g horizon

Node.js是使用6.x“Current”系列的NodeSource Apt存储库安装的,而RethinkDB是从项目自己的Apt存储库安装的。 因此,两个组件都将按照通常的方式更新系统的其余部分,从而接收更新:

sudo apt-get update
sudo apt-get upgrade

下一步