一.介绍
与TT-RSS(Tiny Tiny RSS)相比,Miniflux更加偏向于简洁、简单,以及似乎是隐私或者说是私人(?),参考官方的Feature还单独把保护隐私的功能特性给列出来了
不过作者似乎比较,Hmm,怎么说呢,固执(似乎是这样,或者说有自己的坚持),参考doc里面的说明——>传送门
所以说,Miniflux在兼容上就比TT-RSS稍微差了点,客户端只有Web,且浏览器必须支持ES6(IE请再见),数据库也只能用PostgreSQL,那就让我们来看看Miniflux有什么特殊呢。
二.安装
首先来看下要求:
系统:
- GNU/Linux
- Darwin
数据库:
- Postgresql >= 9.4
浏览器:
- A browser compatible with ECMAScript 6 is required.
- Mozilla Firefox
- Chrome
- Safari
- Microsoft Edge
- Internet Explorer 11 is not supported.
预准备,安装PostgreSQL并创建用户以及库(不要用OneInStack的,用官网的包安装,方法见下方)
访问 https://www.postgresql.org/download/linux/redhat/#yum 获得你系统的repo地址
#导入仓库 yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-6-x86_64/pgdg-centos10-10-2.noarch.rpm -y #安装服务端和客户端以及额外的模块库 yum install postgresql10 postgresql10-server postgresql10-contrib -y #初始化 service postgresql-10 initdb #开机启动 chkconfig postgresql-10 on #启动 service postgresql-10 start
然后对PostgreSQL做些修改
#切换用户 su - postgres #连接数据库 psql #输入密码登陆(官网安装默认没密码) #设置postgres用户的密码 \password postgres #添加插件,Miniflux初始化数据库会用到 CREATE EXTENSION IF NOT EXISTS hstore; #创建新数据库,并授权 CREATE DATABASE miniflux OWNER postgres; GRANT ALL PRIVILEGES ON DATABASE miniflux TO postgres; #退出数据库 \q #退出用户 exit #修改本地登陆,peer改为md5,如下图,之后重启 vi /var/lib/pgsql/10/data/pg_hba.conf #如果不修改将无法直接在本地使用root进行数据库的操作 service postgresql-10 restart
如果遇到错误提示缺少hstore,请不要使用OneInStack的PostgreSQL,最好使用官方的包安装
Miniflux的安装有三种方式,分别为二进制文件安装,包安装以及Docker安装
下载地址: https://github.com/miniflux/miniflux/releases
1. 二进制手动安装
因为是Golang编写的程序,所以二进制安装也挺容易
#获取二进制文件并加权限 wget https://github.com/miniflux/miniflux/releases/download/2.0.4/miniflux-linux-amd64 -O /usr/bin/miniflux chmod +x /usr/bin/miniflux #设置环境变量,程序回去读,里面的PostgreSQL的用户名密码以及地址啊啥的自己改 export DATABASE_URL="postgres://postgres:postgres@127.0.0.1/miniflux?sslmode=disable" #初始化数据库 miniflux -migrate #创建管理用户 miniflux -create-admin
2. 包安装
#Debian wget https://github.com/miniflux/miniflux/releases/download/2.0.4/miniflux_2.0.4_amd64.deb #安装deb包 dpkg -i miniflux_2.0.4_amd64.deb #查看运行状态 systemctl status miniflux #设置环境变量,程序回去读,里面的PostgreSQL的用户名密码以及地址啊啥的自己改 export DATABASE_URL="postgres://postgres:postgres@127.0.0.1/miniflux?sslmode=disable" #初始化数据库 miniflux -migrate #创建管理用户 miniflux -create-admin #CentOS7 #安装RPM包 rpm -ivh https://github.com/miniflux/miniflux/releases/download/2.0.4/miniflux-2.0.4-1.0.x86_64.rpm #设置环境变量,程序回去读,里面的PostgreSQL的用户名密码以及地址啊啥的自己改 export DATABASE_URL="postgres://postgres:postgres@127.0.0.1/miniflux?sslmode=disable" #初始化数据库 miniflux -migrate #创建管理用户 miniflux -create-admin #开机启动 systemctl enable miniflux #启动 systemctl start miniflux #查看运行状态 systemctl status miniflux
3. Docker安装
#指定环境变量,并且映射8080端口到外网 docker run -d -p 8080:8080 -e DATABASE_URL="postgres://postgres:postgres@主机IP/miniflux?sslmode=disable" miniflux/miniflux:version
PS.额外补充一下,Miniflux完全依靠环境变量来配置,举个栗子
#包管理安装的情况下给程序监听1024以下的低位端口的权限 setcap cap_net_bind_service=+ep /usr/bin/miniflux #设置监听地址(也可以用IP:端口的方式) export LISTEN_ADDR=:https #设置数据库连接地址为127.0.0.1,用户名miniflux,密码senrame,表名miniflux(问号前面的那个),并且不使用ssl连接 export DATABASE_URL="postgres://postgres:postgres@127.0.0.1/miniflux?sslmode=disable" #设置证书域名为rss.senra.me来通过内置的功能验证获取Let's Encrypt证书开启HTTPS,这个启用会将上面的监听默认改成443,并且由于通过http-01 challenge方式验证,所以必须443和80端口都能访问,请预先解析好域名 export CERT_DOMAIN=rss.senra.me #指定Base路径,这个是提供给反代的情况下用的,请参考下面的配置文档最下方 #BASE_URL=https://rss.senra.me/ #启动程序 miniflux
Docker的请全部用-e指定环境变量来传入,关于配置的条目可以参考官方文档 https://docs.miniflux.net/en/latest/configuration.html
另外这个地址里还有介绍如何使用Let's Encrypt来直接加上HTTPS证书,以及如何解决包安装的情况下没有权限监听80和443端口的解决办法(其实已经写在上面的配置里了)
这个配置确实有点烦来着……至于如何开机启动和后台运行,我建议直接丢/etc/rc.local里,或者跑个screen啥的,也可以用supervisor指定环境变量启动,是有点儿蛋疼。
在完全配置好环境后启动
极其简洁的登陆界面
登进去是英文,设置里面可以改
默认排序是从旧到新,这个你也可以自己改
Hmm,这其实是Miniflux 2,一代的时候是PHP的,那个部署还算方便,这个二代是有点麻烦,不过得益于Golang,性能应该是有所提高的,依赖也减少了,但是这个安装和PostgreSQL的要求有点烦人,最主要是配置文件的缺失,如果你要用的话我大概会建议使用Docker
文章评论
文章写的很用心、很实用,竟然有种想全采集一遍的冲动=。=
@喵喵喵 喵喵喵????
@Senra #滑稽
顺带一提,在手机夸克浏览器上,网站有一部分是无法显示的
@123 夸克Bug贼多,我之前一直用,后来发现一堆网站都有问题,要么刷不出来要么CSS丢失,然后就弃坑了
博主确实文章写的很用心
@Ashin 感谢资瓷
这是GO的版本吗?之前用过php的,挺喜欢的,还整了个模板,现在作者好像专业于go的了,有小部分rss还是不能订阅,经常为空。
@山小炮 是的,这个的一代是PHP的,二代作者就开始用Go重写了
Miniflux 2 用rsshub源会显示解析错误,有遇到相同问题的小伙伴吗
博主,不知道文中的“这个配置确实有点烦来着……至于如何开机启动和后台运行,我建议直接丢/etc/rc.local里,或者跑个screen啥的,也可以用supervisor指定环境变量启动,是有点儿蛋疼。”具体怎么操作,方便再更新一下吗。谢谢
请问如何让他自动更新订阅文章呢?
这个是你自己搭建的网站吧???