极简RSS订阅器Miniflux
迪丽瓦拉
2024-05-29 09:24:27
0

在这里插入图片描述

什么是 Miniflux ?

Miniflux 是一个极简主义的 RSS 阅读器。它简单、快速、轻便且非常易于使用。Miniflux 是静态编译的单个二进制文件,没有使用任何复杂的框架,也没有外部依赖,简单、快速、轻巧且超级容易安装。支持 AtomRSS 1.0/2.0JSON 格式,支持 OPML 导入 / 导出等。

安装

环境变量

docker 相关的环境变量

变量缺省值描述
POSTGRES_DB数据库库名
POSTGRES_USER数据库用户
POSTGRES_PASSWORD数据库密码
DATABASE_URL数据库地址, postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@dbhost:dbport/${POSTGRES_DB}?sslmode=disable
RUN_MIGRATIONS1自动运行数据库迁移
CREATE_ADMIN1创建管理员
ADMIN_USERNAME管理员账号名
ADMIN_PASSWORD管理员密码

更多的环境变量,请参考官方文档:https://miniflux.app/docs/configuration.html

docker cli 安装

如果你熟悉命令行,可能用 docker cli 更快捷

下面安装时,老苏没有将数据库端口暴露出来

# 新建文件夹 miniflux 和 子目录
mkdir -p /volume2/docker/miniflux/data# 进入 miniflux 目录
cd /volume2/docker/miniflux# 创建网络
docker network create -d bridge miniflux-net# 运行 PostgreSQL 容器
docker run -d \--restart unless-stopped \--name miniflux-db \--network=miniflux-net \-v $(pwd)/data:/var/lib/postgresql/data \-e "POSTGRES_DB=miniflux" \-e "POSTGRES_USER=miniflux" \-e "POSTGRES_PASSWORD=YNAYcg3a9L3B" \postgres:14# 运行 Miniflux 容器
docker run -d \--restart unless-stopped \--name miniflux-web \--network=miniflux-net \-p 8120:8080 \-e "DATABASE_URL=postgres://miniflux:YNAYcg3a9L3B@miniflux-db/miniflux?sslmode=disable" \-e "RUN_MIGRATIONS=1" \-e "CREATE_ADMIN=1" \-e "ADMIN_USERNAME=laosu" \-e "ADMIN_PASSWORD=jCdp64gMapAR" \miniflux/miniflux:2.0.41

docker compose 安装

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'services:db:image: postgres:14container_name: miniflux-db#restart: unless-stoppedenvironment:- POSTGRES_USER=miniflux- POSTGRES_PASSWORD=YNAYcg3a9L3B- POSTGRES_DB=minifluxvolumes:- ./data:/var/lib/postgresql/datahealthcheck:test: ["CMD", "pg_isready", "-U", "miniflux"]interval: 10sstart_period: 30sminiflux:image: miniflux/miniflux:2.0.41container_name: miniflux-web#restart: unless-stoppedports:- "8120:8080"depends_on:- dbenvironment:- DATABASE_URL=postgres://miniflux:YNAYcg3a9L3B@miniflux-db/miniflux?sslmode=disable- RUN_MIGRATIONS=1- CREATE_ADMIN=1- ADMIN_USERNAME=laosu- ADMIN_PASSWORD=jCdp64gMapAR

然后执行下面的命令

# 新建文件夹 miniflux 和 子目录
mkdir -p /volume2/docker/miniflux/data# 进入 miniflux 目录
cd /volume2/docker/miniflux# 将 docker-compose.yml 放入当前目录# 先启动数据库
docker-compose up -d db# 再启动应用
docker-compose up miniflux

之所以没有采用 docker-compose up -d 一键启动,是因为虽然可以通过 depends_on 控制启动顺序,但是实际上miniflux 开始连接 postgres 时,有可能数据库并没有准备好,因而会导致 miniflux 容器启动失败

在这里插入图片描述

有两个办法可以解决这个问题:

  • 第一种方法:先启动数据库 docker-compose up -d db,再启动应用程序 docker-compose up miniflux

  • 第二种方法:是 docker-compose 官方给的建议,通过 wait-for-it.sh 脚本来控制

wait-for-it.sh 代码地址:https://github.com/vishnubob/wait-for-it

相对来说,第一种方法更简单一点,第二种方法老苏也并没有用过,不知道在群晖上是否可行

运行

在浏览器中输入 http://群晖IP:8120 就能看到登录界面

在这里插入图片描述

登录成功之后的主界面还是空的

在这里插入图片描述

中文

进入 Settings --> Language --> 简体中文

在这里插入图片描述

点最下面的 Update 按钮之后,界面就是中文版了

在这里插入图片描述

添加源

还是以老苏的博客为例, --> 新增源 ,输入 https://laosu.ml/atom.xml
在这里插入图片描述

查找源 按钮之后,会显示订阅界面

在这里插入图片描述

进入一篇
在这里插入图片描述

默认只有简介,也就是发布时的 description 部分

在这里插入图片描述

要看全文还需要抓取

虽然安装看起来有点复杂,但是使用是不是非常简单?

参考文档

miniflux/v2: Minimalist and opinionated feed reader
地址:https://github.com/miniflux/v2

dubhad-dev/miniflux-docker
地址:https://github.com/dubhad-dev/miniflux-docker

Installation Instructions
地址:https://miniflux.app/docs/installation.html#docker

v2/contrib/docker-compose at main · miniflux/v2
地址:https://github.com/miniflux/v2/tree/main/contrib/docker-compose

相关内容