使用 Docker 部署 FreshRSS:搭建私有 RSS 阅读服务
目录
本文介绍如何使用 Docker 部署 FreshRSS,搭建自己的 RSS 阅读服务。相比商业服务(如 Inoreader),自托管 FreshRSS 无需付费且无功能限制。
服务器要求
为确保 RSS 源的可靠访问,建议使用境外服务器部署。
一、部署准备
1.1 系统要求
- Docker 和 Docker Compose
- 稳定的网络连接
- 建议 1GB 以上内存
1.2 创建工作目录
# 创建并进入 FreshRSS 工作目录
mkdir ~/freshrss && cd ~/freshrss
二、Docker 配置
2.1 创建配置文件
创建 docker-compose.yml
文件:
version: "3"
services:
# PostgreSQL 数据库服务
freshrss-db:
image: postgres:latest
container_name: freshrss-db
hostname: freshrss-db
restart: always
volumes:
- freshrss-db:/var/lib/postgresql/data
environment:
POSTGRES_USER: freshrss # 设置数据库用户名
POSTGRES_PASSWORD: freshrss # 设置数据库密码
POSTGRES_DB: freshrss # 设置数据库名
# FreshRSS 应用服务
freshrss-app:
image: freshrss/freshrss:latest
container_name: freshrss-app
hostname: freshrss-app
restart: always
ports:
- "39954:80" # 端口映射,可根据需要修改
depends_on:
- freshrss-db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
environment:
CRON_MIN: '*/45' # RSS 更新间隔(分钟)
TZ: Asia/Shanghai # 时区设置
volumes:
freshrss-db:
2.2 启动服务
docker-compose up -d
三、FreshRSS 配置
3.1 初始化设置
访问 http://your-domain:39954
进行初始化配置:
-
数据库配置
- 主机名:
freshrss-db
(与 Docker 容器名对应) - 用户名:与 POSTGRES_USER 值相同
- 密码:与 POSTGRES_PASSWORD 值相同
- 数据库名:与 POSTGRES_DB 值相同
- 表前缀:可自定义
- 主机名:
-
管理员账户
- 设置管理员用户名和密码
- 配置网站基本信息
3.2 优化设置
-
阅读设置
- 建议关闭:
阅读 => 合适将文章标记为已读 => 在滚动浏览后
- 原因:避免意外将未读文章标记为已读
- 建议关闭:
-
扩展功能
- 推荐安装
Auto Refresh
扩展实现自动刷新 - 安装步骤:
- 下载扩展文件
- 解压到
~/freshrss/extensions/
目录 - 在 FreshRSS 后台启用扩展
- 修改刷新间隔:编辑
xExtension-AutoRefresh/static/script.js
- 推荐安装
四、Nginx 反向代理配置
如需配置 Nginx 反向代理,请参考:使用 Nginx 实现多服务复用端口
五、移动端配置
5.1 启用 API 访问
- 进入 FreshRSS 设置
- 开启:
认证 => 允许 API 访问
- 设置:
用户账户 => API 管理 => API 密码
5.2 客户端配置
Fluent Reader
API 地址:https://your-domain/api/fever.php
用户名:您的用户名
密码:API 密码
FeedMe
API 地址:https://your-domain/api/greader.php
用户名:您的用户名
密码:API 密码
服务类型:选择 FreshRSS
注意
FeedMe 请使用 Google Reader API(greader.php),Fever API 可能导致认证失败。