Mac OS 部署 KindleEar 到 Google App Engine 教程

作者 QIFAN 日期 2017-01-09
Mac OS 部署 KindleEar 到 Google App Engine 教程

最近狗耳朵不能访问 feed 地址了,导致一些博客的 rss 不能正常订阅,所以在寻找新的推送方法。



KindleEar 是 cdhigh(Github) 创建的一个 Rss 订阅推送工具,开源免费。链接:KindleEar

使用过程开发者已经在项目 README 中写得很详细,但是在部署时只写了 Windows 环境,Mac 上有几句命令稍稍不一样,就一起说了。

2017.01.13 更新
之前想当然用 gcloud 部署,结果网页正常但并不能推送。看了作者的 FAQ 大概就是因为 gcloud 部署不支持多模块。所以还是老老实实用 appcfg 部署吧。

部署步骤

  1. 登录 Google Cloud Platform 新建一个项目(create project)。(现在 GAE 已经被整到云平台了)
    • 输入 project name 时下面一行小字会显示 project ID ,App 域名就是 [project ID].appspot.com
    • 此步骤需要申请一个 Google 账号,国内朋友需要翻墙。
  2. 本地环境搭建:
  3. 进入安装 KindleEar 的目录,修改下列文件:
    • app.yaml
      注释掉 application 与 version 的两行(第一行与第二行)。
      第一行 application 改为 projectID 。
    • module-worker.yaml
      修改第一行 application 为你的 project ID 。
    • config.py
      修改 SRC_EMAIL 为创建 proejct 的 Gmail,修改 DOMAIN 为项目域名([project ID].appspot.com
      4. 仍然在 KindleEar 的目录下(app.yaml 所在目录),运行:
      gcloud app deploy –project [your-project-ID] –version 1
  4. 进入 Google Cloud SDK 安装目录,一般在 安装包路径/platform/google-appengine/ ,实在找不到就搜 appcfg.py 所在目录。运行下面两行:

    python appcfg.py update kindleEar解压后所在路径/app.yaml kindleEar解压后所在路径/module-worker.yaml
    python appcfg.py update kindleEar解压后所在路径/
  5. 稍微等个几分钟再在浏览器打开项目域名,就可以看见 KindleEar 已经部署上去了。默认用户名为 admin ,密码为 admin 。记得及时修改。

  6. 登录 KindleEar 以后看一下 Feeds 栏,如果出现了 “internal server error” 。先去 Google Cloud Platform 搜索 Datastore (中文版叫数据存储),再点入 Indexes 栏查看是否有内容。若没有,回到 Terminal 在 SDK 的目录下,手动更新索引:
    gcloud app deploy index.yaml

    python appcfg.py update_queues kindleEar解压后所在路径/
  7. 看 Indexes 是否出现了下图内容。后面的 Status 可能是 indexing 不要紧,过两分钟进域名再看看,就正常了。如果还不行就只能重新部署了。
    indexes

部署是否成功的关键在于能否推送,如果不行就是部署失败了。


References
http://htmlpreview.github.io/?https://github.com/cdhigh/KindleEar/blob/master/static/faq.html
https://gongm.in/2014/12/deploy-kindle-ear-on-mac/