Table of Contents
Miniflux SQLite Configuration Issue
Status: Resolved (switched to FreshRSS)
Date: 2026-05-27
Affected service: RSS feed reader
Symptom
Miniflux container repeatedly crashed with dial tcp [::1]:5432: connect: connection refused despite configuring SQLite via DATABASE_URL. The container would restart in a loop.
Diagnosis
docker logs miniflux --tail 10
Output showed:
level=INFO msg="The default value for DATABASE_URL is used" dial tcp [::1]:5432: connect: connection refused
Miniflux was ignoring the DATABASE_URL environment variable and defaulting to PostgreSQL connection settings.
Root Cause
The official Miniflux Docker image is designed to work with PostgreSQL by default. SQLite support is poorly documented and the DATABASE_URL environment variable is not reliably honored in the Docker context. Multiple configuration attempts were made:
DATABASE_URL=sqlite3:/data/miniflux.db?_journal_mode=WAL*DATABASE_URL=file:/data/miniflux.db- Individual variables (
DATABASE_CLIENT=sqlite,DATABASE_PATH=/data/miniflux.db) - Config file mount at
/etc/miniflux
All attempts resulted in Miniflux defaulting to PostgreSQL and failing to connect.
Fix
Switched to FreshRSS, which uses SQLite by default without requiring special configuration:
freshrss: image: freshrss/freshrss:latest container_name: freshrss restart: unless-stopped environment: - TZ=America/Vancouver volumes: - ./freshrss/data:/var/www/FreshRSS/data - ./freshrss/extensions:/var/www/FreshRSS/extensions networks: - cafe_net
FreshRSS runs on Apache and serves on port 80. Caddy routing updated:
@rss host rss.folk.zone
handle @rss {
reverse_proxy freshrss:80
}
FreshRSS Setup
After deployment, complete setup at https://rss.folk.zone/i/:
- Click Installation
- Choose database type: SQLite (default path is correct)
- Click Continue
- Create admin account
- Complete the wizard
