docker-compose安装Miniflux并构建自己的Rss信息源

NO.1
Miniflux简介

Miniflux 是一个极简的RSS阅读器。

github地址:https://github.com/miniflux/v2

NO.2
Miniflux特点

Miniflux优点

上手难易程度,兼容性

  1. Miniflux 是一个渐进式网络应用程序
  2. 跨平台:适用于 iOS 和 Android
  3. 布局自适应屏幕尺寸(响应式设计)
  4. 自托管,可以使用docker部署,并支持ARM架构

RSS特性

  1. 全文搜索
  2. 支持中文
  3. 支持的格式:Atom 0.3/1.0、RSS 1.0/2.0、RDF 和 JSON

Miniflux缺点

暂未发现

NO.3
Miniflux安装

使用docker-compose安装

参考文档:https://miniflux.app/docs/installation.html#docker

version: '3.4'
services:
  miniflux:
    image: miniflux/miniflux:latest
    ports:
      - "7025:8080"
    depends_on:
      - db
    environment:
      - DATABASE_URL=postgres://miniflux:[email protected]/miniflux?sslmode=disable
      - RUN_MIGRATIONS=1
      - CREATE_ADMIN=1
      - ADMIN_USERNAME=admin
      - ADMIN_PASSWORD=test123
  db:
    image: postgres:latest
    environment:
      - POSTGRES_USER=miniflux
      - POSTGRES_PASSWORD=secret
    volumes:
      - miniflux-db:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD", "pg_isready", "-U", "miniflux"]
      interval: 10s
      start_period: 30s
volumes:
  miniflux-db:

注意事项

第一次 docker-compose up并不是成功,看日志,应该是创建数据库和用户,等待连接

2022-08-10 13:52:58.899 UTC [1] LOG: listening on Unix socket “/var/run/postgresql/.s.PGSQL.5432”
db_1 | 2022-08-10 13:52:58.941 UTC [71] LOG: database system was shut down at 2022-08-10 13:52:58 UTC
db_1 | 2022-08-10 13:52:58.960 UTC [1] LOG: database system is ready to accept connections

第二次 docker-compose up才是正常启动

miniflux_1 | [INFO] Starting Miniflux…
miniflux_1 | [INFO] Starting scheduler…
miniflux_1 | [INFO] Listening on “0.0.0.0:8080” without TLS

安装成功后,使用ip:端口访问

本文的端口为7025,安装环境为树莓派

NO.4
Miniflux使用

登录

本文的初始账户和密码在docker-compose配置中

账户admin

密码 test123

修改为简体中文

订阅独立博客

本文的例子为自己的

解析出的订阅内容

可以看到输入首页也能正常获取rss订阅

NO.5
Tips

Miniflux是继TinyRss和FreshRss后的体验的第三个自托管Rss阅读器

使用体验上大同小异,能够满足以下需求即可

  1. 输入网站首站地址,也能解析出正确的Rss订阅源地址,方便订阅
  2. 可使用docker一件部署,省去不同环境安装,升级 ,备份的各种事项上的时间,可自托管,兼容ARM架构
  3. 提供web交互界面和web管理界面,可浏览器在线访问(同时提供各个客户端或者自适应UI)

非开源的可以试试inoreader,作为自托管和商业服务的相关补充

END.