主机资讯与使用指南
Miniflux 部署教程:Docker、RSS 订阅与个人阅读器
通过 Docker Compose 部署 Miniflux 与 PostgreSQL,创建管理员、添加 RSS 并配置域名及数据备份。
用一个服务集中订阅 RSS
Miniflux 把不同网站的 RSS 更新放进一个阅读器,适合在电脑与手机之间同步未读状态。它需要 PostgreSQL 保存订阅、文章和账号。
本文使用 Linux、Docker Compose 与宿主机 Caddy。先准备 rss.example.com 域名,已有 Docker 安装和 HTTPS 教程可作为前置阅读。
生成凭证并建立 Compose
mkdir -p "$HOME/miniflux"
cd "$HOME/miniflux"
umask 077
printf "DB_PASSWORD=%s\nADMIN_PASSWORD=%s\n" "$(openssl rand -hex 24)" "$(openssl rand -hex 24)" > .env将下面配置保存成 compose.yml。PostgreSQL 固定为 17,数据目录与该大版本匹配。
services:
db:
image: postgres:17-alpine
restart: unless-stopped
environment:
POSTGRES_DB: miniflux
POSTGRES_USER: miniflux
POSTGRES_PASSWORD: ${DB_PASSWORD:?set DB_PASSWORD}
volumes:
- ./postgres:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U miniflux -d miniflux"]
interval: 10s
timeout: 5s
retries: 10
miniflux:
image: miniflux/miniflux:latest
restart: unless-stopped
ports:
- "127.0.0.1:8082:8080"
environment:
DATABASE_URL: postgres://miniflux:${DB_PASSWORD:?set DB_PASSWORD}@db:5432/miniflux?sslmode=disable
RUN_MIGRATIONS: "1"
CREATE_ADMIN: "1"
ADMIN_USERNAME: admin
ADMIN_PASSWORD: ${ADMIN_PASSWORD:?set ADMIN_PASSWORD}
BASE_URL: https://rss.example.com
depends_on:
db:
condition: service_healthy启动与域名访问
docker compose config --quiet
docker compose up -d
docker compose ps
docker compose logs --tail=100 minifluxrss.example.com {
reverse_proxy 127.0.0.1:8082
}域名需换成自己的,并同步修改 BASE_URL。Caddy 运行在宿主机时使用此本地映射;其他代理环境按对应网络设置。
登录并添加订阅
使用 admin 和 .env 中生成的 ADMIN_PASSWORD 登录,添加一个有效 RSS 地址,查看能否刷新出文章。订阅入口通常是网站提供的 feed URL,不是任意首页地址。
首次初始化完成后,可以从环境中移除 CREATE_ADMIN、ADMIN_USERNAME、ADMIN_PASSWORD 并重建容器,账号已经保存在数据库中。不要删除数据库目录。
升级和备份
将实际运行的 Miniflux 版本记录下来,需要固定版本时把 latest 改成对应稳定标签。升级前导出 PostgreSQL 数据,保留 compose.yml 与 .env。
PostgreSQL 升级大版本需要逻辑导出恢复或专门升级流程,不能只把 17 改成 18。RSS 阅读器占用随订阅、文章数量和保留时间变化,磁盘用量增加时检查数据保留设置。