利用Now.sh免费套餐来部署OneIndex教程

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
    

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

  2. 安装nodejsnpm

    apt install nodejs npm -y
    
  3. 升级npm为最新版本

    npm install npm@latest -g
    
  4. 安装用于安装nodejs的模块n

    npm install -g n
    
  5. 然后通过n模块安装稳定版本的nodejs

    n stable
    
  6. 安装now.sh客户端

    npm install -g now
    
  7. 登陆now账号

    now login
    
  8. 拉取最新的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

  9. 缩短网址的第一种方法,now.sh转发

    now alias oneindex-code.now.sh subdomain
    

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

  10. 缩短网址的第二种方法,绑定自己的域名

    now alias oneindex-code.now.sh yourdomain.com
    

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

  11. 部署完成后,容器默认会隔一段时间重启,为了不让容器重启,执行下面的命令

    now scale oneindex-code.now.sh 1
    

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

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