分享一下我自建 FreshRSS 的过程 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Pogbag
V2EX    分享发现

分享一下我自建 FreshRSS 的过程

  •  
  •   Pogbag 2021-12-17 09:21:06 +08:00 5685 次点击
    这是一个创建于 1443 天前的主题,其中的信息可能已经有所发展或是发生改变。
    p>感觉最近 rss 话题又开始火了,正好我自建 rss 使用了一段时间,分享下搭建过程,欢迎大家一起交流。

    最终效果

    下图分别是 web 浏览器和 iPhone 上的使用体验 iShot2021-12-16-21.42.16.png STIIITCH_2021_12_16_09_46_27.png

    教程正式开始

    环境要求:

    • 一台 NAS/Linux 主机 /VPS
    • 配置好 Docker 环境
    • 公网 IP 或者已内网穿透

    部署 RSShub

    [RSSHub][1] 是一个开源、简单易用、易于扩展的 RSS 生成器,可以给任何奇奇怪怪的内容生成 RSS 订阅源。RSSHub 借助于开源社区的力量快速发展中,目前已适配数百家网站的上千项内容。 文本以群晖系统为例,介绍安装方法 Docker-注册表-搜索 RSShub ,下载安装。 iShot2021-12-16-22.01.00.png 只需要设置好外部端口即可,其他保持默认,本文外部端口和内部端口一致,均为 1200 ,你也可以改成其他端口,只要是没有被占用即可。 iShot2021-12-16-22.07.49.png 然后在浏览器输入 http://192.168.31.127:1200 ,如果出现以下页面,说明部署成功。(此 ip 是我的群晖内网 ip ) iShot2021-12-16-22.06.29.png

    部署 FreshRSS

    同样需要在 Docker 里安装,注册表-搜索 FreshRSS ,安装 linuxserver/freshrss 这个镜像。 需要设置内容: 存储位置:**/docker/freshRSS/config** 前面路径根据自己情况设置,后面严格一致 端口:5005:80 前面端口根据自己情况设置,只要是不被占用端口就可以,后面严格一致 环境:PGID=1000 PUID=1000 根据自己情况填写 iShot2021-12-16-22.20.40.png iShot2021-12-16-22.12.18.png 设置完成后,在浏览器输入 http://192.168.31.127:5005 ,出现注册页面,说明安装成功,按照系统提示进行初始化安装。 iShot2021-12-16-22.24.38.png

    添加 rss 源

    到了重头戏,如果一个网站提供了 rss 源,那么直接导入即可,比如少数派的 rss 地址为 https://sspai.com/feed ,我们在订阅管理-添加订阅源或者分类就可以直接订阅了。 iShot2021-12-16-22.27.06.png 如果一个网站没有提供 rss 源,那么我们就需要利用上面自建的 RSShub 进行抓取,下面以订阅一位微博博主为例子进行演示。 首先打开 https://docs.rsshub.app ,找到微博项目对应的路由。 iShot2021-12-16-22.32.27.png 我们只要把这个网址更改一下,就可以抓取微博博主的 rss 源地址了,比如我们想抓取王冰冰的额微博数据,只需要找到她的微博 id 即可,去网页端可以查看,查找到王冰冰的微博 id 是6512991534 iShot2021-12-16-22.37.27.png 我们把上面网址前面的 rsshub.app 改为我们自建的 RSShub 服务地址 192.168.31.127:1200 ,后面的用户 id 改为我们想抓取的用户 id:6512991534 ,那么经过一系列排列组合,王冰冰的微博 rss 源地址就是 http://192.168.31.127:1200/weibo/user/6512991534 。 我们把源添加到 FreshRSS 中,就可以订阅了。 iShot2021-12-16-22.41.43.png 本文只是以微博为例子进行说明,更多网站的规则要到 rsshub 里面查询,并排列组合成自己的订阅源。

    移动端的设置

    iOS 平台的 rss 阅读器还是挺多的,比如大名鼎鼎的 Reeder ,不过我使用下来,发现很别扭,最后找到了比较适合我的软件就是 NetNewsWire ,只要是支持 FreshRSS 的 rss 阅读器就可以,不限于这两个,我这边以 NetNewsWire 示例。 首先在 FreshRSS 上开启 API ,在设置-认证处打开允许 API 访问 iShot2021-12-16-23.13.24.png 然后到用户账户,API 管理处设置第三方客户端的密码。 iShot2021-12-16-23.13.58.png 这样你的 API 地址就生成好了,比如我的订阅地址就是 http://192.168.31.127:5005/api/greader.php 下面,我们把这个地址接入到 NetNewsWire ,设置-Add Account-SELF-HOSTED FreshRSS ,填写你的 FresRSS 的用户名,API 密码以及 API 地址,就可以接入服务器上部署的 RSS 服务了。 STIIITCH_2021_12_16_11_43_44.png

    外网访问

    经过上面一系列设置,可以在 web ,移动端阅读 RSS 了,但是这仅限局域网,我演示的地址也是内网 IP ,如果在外网环境,还需要把内网的端口映射出去,这部分属于基础内容,网上教程很多,我就不详细介绍了。

    关键词:外网访问 DDNS 端口映射 内网穿透

    结束

    有了自建的 RSS 服务,我们就可以在浩瀚如烟的互联网世界中,选取自己真正关心的 /有价值的内容了。

    PS:微信公众号可通过 feeddd.org 直接获取 rss 源。 [1]: https://docs.rsshub.app/

    12 条回复    2022-04-28 19:06:53 +08:00
    WildCat
        1
    WildCat  
       2021-12-17 09:23:30 +08:00
    https://blog.cloudflare.com/argo-tunnel/ 内网穿透可以用 CloudFlare Argo
    Kimen
        2
    Kimen  
       2021-12-17 09:31:59 +08:00
    不错不错
    PEIENYKYK
        3
    PEIENYKYK  
       2021-12-17 09:41:22 +08:00
    谢谢社会你虎哥
    princelai
        4
    princelai  
       2021-12-17 10:06:27 +08:00   1
    我用了 pg 数据库,没用 sqlite,数据多了搜索性能会更好,docker 同一网端开一个 pg 就好了

    另外推荐内置的一个 ThreePanesView 插件,我觉得用了之后阅读体验更好
    cssk
        5
    cssk  
       2021-12-17 10:08:45 +08:00
    rsshub 已弃,太多没全文输出的了
    IceChen
        6
    IceChen  
       2021-12-17 12:03:30 +08:00
    你这个 docker 的管理工具是什么啊?
    K1W1
        7
    K1W1  
       2021-12-17 12:39:17 +08:00 via Android
    @IceChen 像是群晖自带的容器管理工具
    roth
        8
    roth  
       2021-12-17 16:24:51 +08:00
    @princelai nas 上 pg 都跑的起来吗
    princelai
        9
    princelai  
       2021-12-17 16:32:45 +08:00
    @roth #8 为什么不行啊,反正就我一个人用,三四个程序用完全没压力,外网访问的瓶颈在上行网速上,我不仅跑 pg,j3455 上还跑了 20+个 docker 呢

    Pogbag
        10
    Pogbag  
    OP
       2021-12-17 17:06:06 +08:00
    @IceChen 群晖自带的 docker
    xinh
        11
    xinh  
       2022-01-03 13:18:26 +08:00 via iPhone
    @cssk rsshub 订阅了几个官方法规发布站没有全文,老哥有什么好推荐吗
    spikeLee
        12
    spikeLee  
       2022-04-28 19:06:53 +08:00
    谢谢喵
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2721 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 06:36 PVG 14:36 LAX 22:36 JFK 01:36
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86