This page looks best with JavaScript enabled

Miniflux | 利用Docker-compose搭建RSS阅读器

简洁稳定的自建RSS阅读器

 ·  ☕ 2 min read

水一篇文章。皮塔丘之前问我在用什么RSS阅读器。其实在电脑端我一直在偷懒用zyn写的无后端静态网页播客播放器闭客。后来和皮塔丘一起看RSS阅读器的搭建教程,食指大动就顺便搭了。

注意:
本教程省略了一些与Docker&Docker compose相关的知识。如果没有安装,请参考这里安装。

搭建过程

在任意目录下新建docker-compose.yml文件:

mkdir -p /opt/miniflux && cd /opt/miniflux && nano docker-compose.yml

写入以下内容,保存:

version: '3'
services:
  miniflux:
    image: miniflux/miniflux:latest
    ports:
      - "80:8080"   #80是默认对外开放的端口,建议改为其他任意可用端口
    depends_on:
      - db
    environment:
      - DATABASE_URL=postgres://miniflux:secret@db/miniflux?sslmode=disable   #数据库url,secret改为你的数据库密码
      - RUN_MIGRATIONS=1
      - POLLING_FREQUENCY=60   #抓取feed的时间间隔(单位为分钟)
      - CREATE_ADMIN=1
      - ADMIN_USERNAME=admin   #管理员帐号用户名
      - ADMIN_PASSWORD=test123   #管理员帐号密码
    restart: unless-stopped

  db:
    image: postgres:10.1
    environment:
      - POSTGRES_USER=miniflux    #数据库用户名
      - POSTGRES_PASSWORD=secret   #数据库密码,默认secret
    volumes:
      - ./miniflux-db:/var/lib/postgresql/data

然后运行docker-compose up -d,此时用浏览器访问https://服务器ip:端口号就可以使用管理员帐号密码登录了。

Nginx反向代理

如果你没有域名,可以跳过这步。

首先去DNS服务商添加一条指向服务器ip,内容为域名的A记录,然后回到服务器运行以下命令:

sudo -i   #切换至root用户
apt install nginx -y    #安装nginx
apt install snapd
snap install core   #安装snap
snap install certbot --classic  #使用snap安装certbot

运行nano /etc/nginx/conf.d/miniflux.conf,内容如下:

server {
    listen 80;
    server_name     你的域名;

    location / {
        proxy_pass http://127.0.0.1:8080;    #8080改为miniflux对外开放的端口,默认为8080
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

测试配置文件是否有错误(试运行):

nginx -t

若没有错误,生效新的配置文件并运行 Nginx,开机启动:

nginx -s reload
systemctl start nginx
systemctl enable nginx

运行sudo certbot --nginx获取SSL证书。

一些碎碎念

最开始想搭建的RSS阅读器其实是TTRSS,但由于试用后发现反应很慢+维护不频繁等原因换成了Miniflux。关于Miniflux和其他RSS阅读器的优缺点请看这里

搭配RSSHub食用真的很香!小众软件正好分享了显示当前网页RSS订阅地址的油猴脚本

另外,Miniflux竟然也可以自定义CSS,于是开心地把鼠标选中底色CSS样式加了上去:

1
2
3
4
5
/*鼠标选中底色*/
*::selection {
    color: #fff;   /*白色*/
    background-color: #b85798;   /*陈玫红*/
}

blobsignok 万物皆可 RSS!


Roelxy
WRITTEN BY
Roelxy
新世紀摸魚戰士