qnap nas搭建rss全攻略

目标

在qnap nas上搭建ttrss、rsshub,并通过fluent reader连接到所搭建的服务,实现多端同步。过程中踩了很多坑,所以这篇文章将列出所有遇到的坑,完整详细地讲解如何搭建一个可以正常使用的rss系统。

nas搭建教程

awesome ttrss (文档

简介

一个一站式rss客户端解决方案,可以多端同步浏览记录。其中的fever插件允许应用程序接入。

创建数据库文件夹

ttrss需要数据库来保存文件。在File station中Container共享文件夹中右键创建文件夹,右键新建的文件夹选择属性,记下文件路径。

注意:显示的文件路径不全,需要在前面补上/share,在后面补上/文件夹名称,最终路径应该像这样:/share/.../文件夹名称

使用docker安装

qnap提供container station,可以运行docker容器。首先在app center里安装container station(这里已经装好):

container station

打开之后选择创建(create),右上角选择create application:


创建

弹出一个窗口,随便取个名字,然后把下面的代码粘贴到YAML一栏(这段代码在官方文档里有):

version: "3"

services:
  service.rss:
    image: wangqiru/ttrss:latest
    container_name: ttrss
    ports:
      - 181:80
    environment:
      - SELF_URL_PATH=http://ip:181/ # please change to your own domain
      - DB_PASS=ttrss # use the same password defined in `database.postgres`
      - PUID=1000
      - PGID=1000
      - ALLOW_PORTS=1200
    volumes:
      - feed-icons:/var/www/feed-icons/
    networks:
      - public_access
      - service_only
      - database_only
    stdin_open: true
    tty: true
    restart: always

  service.mercury: # set Mercury Parser API endpoint to `service.mercury:3000` on TTRSS plugin setting page
    image: wangqiru/mercury-parser-api:latest
    container_name: mercury
    networks:
      - public_access
      - service_only
    restart: always

  service.opencc: # set OpenCC API endpoint to `service.opencc:3000` on TTRSS plugin setting page
    image: wangqiru/opencc-api-server:latest
    container_name: opencc
    environment:
      - NODE_ENV=production
    networks:
      - service_only
    restart: always

  database.postgres:
    image: postgres:13-alpine
    container_name: postgres
    environment:
      - POSTGRES_PASSWORD=ttrss # feel free to change the password
    volumes:
      - 数据库路径:/var/lib/postgresql/data # persist postgres data to ~/postgres/data/ on the host
    networks:
      - database_only
    restart: always

  # utility.watchtower:
  #   container_name: watchtower
  #   image: containrrr/watchtower:latest
  #   volumes:
  #     - /var/run/docker.sock:/var/run/docker.sock
  #   environment:
  #     - WATCHTOWER_CLEANUP=true
  #     - WATCHTOWER_POLL_INTERVAL=86400
  #   restart: always

volumes:
  feed-icons:

networks:
  public_access: # Provide the access for ttrss UI
  service_only: # Provide the communication network between services only
    internal: true
  database_only: # Provide the communication between ttrss and database only
    internal: true

粘贴后,修改ip、数据库路径。ip即nas的ip地址,数据库路径即在第一步中创建的文件夹路径。

注意:其中allow_ports为除80,443端口外ttrss可以访问的端口号,这里设置为1200是为了rsshub能够正常订阅。

设置完成后,点确定就可以创建ttrss了。等待一段时间,装好后访问http://ip:181/就可以访问到ttrss界面了。

设置ttrss

打开ttrss后,默认账号admin,密码password。在右上角偏好设置-用户里可以改。

启用fever插件

为了让客户端可以访问ttrss,必须借助fever插件。
偏好设置-偏好设置-Fever Emulation里设个密码:


fever

连接fever(以开源的fluent reader为例,支持windows,ios,android等平台)

打开设置,选择服务,fever api。在“端点”中填入http://ip:181/plugins/fever/。用户名为ttrss用户名,密码是fever插件中设置的密码,不是ttrss的密码!

到此,ttrss设置完毕,可以正常订阅、阅读rss内容了。下面配置rsshub。

rsshub(文档

简介

一个可以为不提供rss站点生成rss的项目。

docker搭建

因为这次不需要多个容器(ttrss需要有数据库和本体),所以不需要输入代码,所有操作都可以在图形界面进行,首先安装rsshub容器(从左到右按照图示操作):


安装rsshub

版本选latest,到最后选择advanced settings>>,选择network一栏,把network mode调成bridge,选择use static IP,把ip address改成不同于nas的(一般改最后一位即可)。

注意:请根据实际网络情况配置该项。

为什么要这么做?

实际测试无法自己访问自己,所以将容器独立出来,为它在局域网内分配一个单独ip,即可正常访问。

接下来建立容器,等待一段时间后访问ip:1200,若出现welcome to rsshub即建立成功。

到此,所有配置全部完成,应该可以正常使用了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容

  • 作者:ZAX 溪曳时间:2017年8月23日 这一期文章的主角就是树莓派! 那么,树莓派是什么呢? 通过上面的问答...
    淀粉月刊阅读 31,154评论 2 48
  • 发现自己已经好长时间没事就喜欢刷知乎,或者刷豆瓣,而推荐给我的又都是什么结婚后是什么感受,离婚后是什么感受,处对象...
    苏三州阅读 1,074评论 1 0
  • 想在两个小时之内搭建出来一个带有评论系统和谷歌数据分析的静态博客,同时完成静态博客的自动构建和部署吗🚀?这篇文章对...
    去冲浪鸭阅读 1,458评论 0 3
  • 上一篇文章从应用(application)的选择上推荐了一些我常用的应用或工具,这篇主要从配置(config)和思...
    芒僧阅读 1,348评论 0 0
  • 大家都知道 RSS 是一种用来消息聚合的格式规范,有着更高的阅读效率、更好的阅读体验、可以掌握主动权等等优点。 本...
    Lsaiah阅读 1,448评论 0 0