该教程年久失修,不建议参考
2018.10.10更新:
有很多小伙伴没有ubuntu的虚拟机哈,所以这篇教程的意义在哪里呢……
所以我找到了一个替代方案,用WebIDE操作即可。
亲测codenvy.io是可以操作的,支持复制粘贴,非常方便。

打开网址注册一个账号,然后验证邮箱。

创建 Workspace 的时候选 Blank:

进入IDE界面后注意用户这个时候并不是root,如果需要直接用后面的命令的话还需要一条命令:

sudo -i

无需密码直接进入root用户。

后面的操作就和下面一样了,但是不需要安装git了。


本文来自如有乐享,但是本人在Linux上测试后发现其在nodejsnpmnow安装的描述中存在着一些问题。所以部分转载并做了一些补充。

测试环境:Docker镜像:rastasheep/ubuntu-sshd

Now账号注册地址:https://zeit.co/

Onedrive for Business账号请自备。

  1. 首先是更新系统环境:
apt-get upgrade
apt-get update
apt-get install -y git

如果有其他软件需求请自行安装。

  1. 安装nodejsnpm
apt install nodejs npm -y
  1. 升级npm为最新版本
npm install npm@latest -g
  1. 安装用于安装nodejs的模块n
npm install -g n
  1. 然后通过n模块安装稳定版本的nodejs
n stable
  1. 安装now.sh客户端
npm install -g now
  1. 登陆now账号
now login
  1. 拉取最新的oneindex代码并部署
git clone https://github.com/malaohu/oneindex.git -b now-sh
cd oneindex
now

在部署过程中会出现你的URL,类似于https://oneindex-code.now.sh,其中code是一段随机码,比较难记,有两种方法可以缩短网址。
也可以到now.sh管理面板中查看,地址:https://zeit.co/dashboard

  1. 缩短网址的第一种方法,now.sh转发
now alias oneindex-code.now.sh subdomain

这是now.sh官网提供的一种方法。由用户指定一个subdomain,即一个短语,然后生成新的网址为https://subdomain.now.sh

  1. 缩短网址的第二种方法,绑定自己的域名
now alias oneindex-code.now.sh yourdomain.com

该操作对域名有要求,必须拥有对顶级域名的操作权。需要在顶级域名下添加TXT记录。
这样,在SSH中就会出现now的验证,第一次验证会失败,需要你在顶级域名下添加TXT记录以验证域名所有权,然后再次验证,域名所有权验证通过,但是域名没有指定到网页上,因此,会再次出现错误,这时需要你把自己的域名CNAMEalias.zeit.co上。第三次验证,成功,可以通过自己的域名访问了。

  1. 部署完成后,容器默认会隔一段时间重启,为了不让容器重启,执行下面的命令
now scale oneindex-code.now.sh 1

至此,该部分教程结束。说一下我个人的感受。首先就是省心,now这个平台和github合作的,想来应该很稳定了,其次就是自己的域名一绑定上就有https,还是值得一玩的。

当然,也有缺点,第一,不支持伪静态,第二,不能设置crontab定时任务。不过这两点没有刚需其实也是无所谓的。