阅读 394

使用 Docker 搭建你自己的 RSS 服务(Miniflux)

本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载、或重新修改使用,但需要注明来源。 署名 4.0 国际 (CC BY 4.0)

本文作者: 苏洋

创建时间: 2019年01月22日 统计字数: 1985字 阅读时间: 4分钟阅读 本文链接: soulteary.com/2019/01/22/…


使用 Docker 搭建你自己的 RSS 服务(Miniflux)

在算法推荐满天飞的世界里,定制获取信息就显得比较另类了,但是它可能是更高效的手段。

本篇是我之前提到的三种常规的 RSS 服务搭建方式的第三篇,Miniflux。

如果你有阅读过我之前写的文章,那么参考本篇文章将文章搭建起来,应该只需要3分钟或者更少,如果你没有看过,那么可以点击本文相关的文章标签,阅读过往的文章。

关于 Miniflux

Miniflux 是一款基于 Go 编写的 RSS 服务。相比前两篇文章介绍的工具,它有以下特点:

  • 程序设计极简,不处理任何订阅之外的事情。
  • 程序无外部依赖,运行性能高。
  • 支持自动抓取并缓存图片,加速浏览。
  • 有限支持自动将摘要替换为全文进行抓取。
  • 支持多账号登录,支持 Fever API ,允许客户端从外部登录。
  • 支持集成 PinBoard 、Instapaper、 Pocket、Wallabag、Nunux Keeper 等服务。
  • 提供 Open API、书签快速订阅脚本。
  • 维护者和社区相对活跃,更新频率高。

但是它也有一些问题:

  • 文档不够丰富,优化调试时,也需要翻代码。

如果你想了解更多,可以访问这里,如果你只是想使用,那么请继续阅读。

使用 Docker 和 Traefik 提供服务

官方代码版本更新比较勤快,可以使用官方容器镜像而无需二次封装新的镜像:miniflux/miniflux:2.0.14

下面是我提供的服务应用配置,定义了中文界面,RSS 资料缓存接近永久,应用升级版本时,自动升级并兼容新版本数据库字段。

version: '3'

services:

  miniflux:
    image: miniflux/miniflux:2.0.14
    restart: always
    depends_on:
      - db
    expose:
      - 8080
    networks:
      - traefik
    environment:
      - BASE_URL=rss.orange.lab.com
      - ARCHIVE_READ_DAYS=36500
      - CLEANUP_FREQUENCY=36500
      - RUN_MIGRATIONS=1
      - CREATE_ADMIN=1
      - ADMIN_USERNAME=soulteary
      - ADMIN_PASSWORD=soulteary
      - PROXY_IMAGES=all
      - DATABASE_URL=postgres://miniflux:secret@db/miniflux?sslmode=disable
    labels:
      - "traefik.enable=true"
      - "traefik.port=8080"
      - "traefik.frontend.rule=Host:rss.lab.com"
      - "traefik.frontend.entryPoints=http,https"

  db:
    image: postgres:10.1-alpine
    restart: always
    expose:
      - 5432
    networks:
      - traefik
    volumes:
      - ./data:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=miniflux
      - POSTGRES_PASSWORD=secret

networks:
  traefik:
    external: true
复制代码

在使用 docker-compose up 将服务运行起来之后,我们打开浏览器,访问:rss.lab.com

使用配置中定义的管理员账号进行登录之后,你就能够拥有一个功能强大,界面友好的 RSS 订阅服务了。

推荐先进行界面设置,下面是我的配置,仅供参考。

stringer rss 默认界面

如果你希望手机、笔记本上进行同步阅读,可以配置 Fever API。

stringer rss 默认界面

最后,订阅界面如下。

stringer rss 默认界面

最后

之前写文章总是考虑没有阅读基础的同学,而忽略了一直订阅、关注着我的同学,未来重复的内容,我将会和本文一样,给予简短的指引,不赘述基础建设,只聊主题相关的核心部分。

最近工作比较忙,没有太多时间写文章,这篇内容躺在草稿箱里快半个月了。接下来我将写几篇内容,聊聊如何解决 RSS 源不能够直接访问,或网站不支持 RSS 订阅的问题。

感谢持续订阅和支持我的朋友。

— EOF


我现在有一个小小的折腾群,里面聚集了一些喜欢折腾的小伙伴。

在不发广告的情况下,我们在里面会一起聊聊软件、HomeLab、编程上的一些问题,也会在群里不定期的分享一些技术沙龙的资料。

喜欢折腾的小伙伴欢迎扫码添加好友。(请注明来源和目的,否则不会通过审核)

关于折腾群入群的那些事

关注下面的标签,发现更多相似文章
评论