Miniflux Installation with Docker

This document describes how to use the Docker images of Miniflux.

Container Registries

Docker Registries:

Docker images are published to 3 different container registries:

Docker Architectures:

Docker Tags Naming Convention:

The recommendation is to use a pinned version to avoid unexpected updates.

How to Run the Container Manually

Pull the image and run the container:

docker run -d \
  -p 80:8080 \
  --name miniflux \
  -e "DATABASE_URL=postgres://miniflux:*password*@*dbhost*/miniflux?sslmode=disable" \
  -e "RUN_MIGRATIONS=1" \
  -e "CREATE_ADMIN=1" \
  -e "ADMIN_USERNAME=*username*" \
  -e "ADMIN_PASSWORD=*password*" \
  docker.io/miniflux/miniflux:latest

Running the command above will run the migrations and sets up a new admin account with the chosen username and password.

Once the container is started, you should be able to access the application on the exposed port which is port 80 in this example.

Docker Compose

Here is an example of a Docker Compose file:

services:
  miniflux:
    image: miniflux/miniflux:latest
    ports:
      - "80:8080"
    depends_on:
      db:
        condition: service_healthy
    environment:
      - DATABASE_URL=postgres://miniflux:secret@db/miniflux?sslmode=disable
      - RUN_MIGRATIONS=1
      - CREATE_ADMIN=1
      - ADMIN_USERNAME=admin
      - ADMIN_PASSWORD=test123
  db:
    image: postgres:15
    environment:
      - POSTGRES_USER=miniflux
      - POSTGRES_PASSWORD=secret
      - POSTGRES_DB=miniflux
    volumes:
      - miniflux-db:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD", "pg_isready", "-U", "miniflux"]
      interval: 10s
      start_period: 30s
volumes:
  miniflux-db:

There are more examples in the Git repository with Traefik and Caddy: https://github.com/miniflux/v2/tree/master/contrib/docker-compose

You could also configure an optional health check in your Docker Compose file:

miniflux:
  image: miniflux/miniflux:latest
  healthcheck:
    test: ["CMD", "/usr/bin/miniflux", "-healthcheck", "auto"]

Make sure to take a look a the list of configuration parameters to customize your installation.