MasterpieceDockerCompose/miniflux
miracle091 282aa11a70 Aggiunta la flag no-new-privileges:true per una maggiore sicurezza per l'host e il container 2021-06-10 09:56:26 +02:00
..
.env Maggiore chiarezza generale e vari fix 2021-05-17 12:45:18 +02:00
README.md Aggiunta la flag no-new-privileges:true per una maggiore sicurezza per l'host e il container 2021-06-10 09:56:26 +02:00
docker-compose.yml Aggiunta la flag no-new-privileges:true per una maggiore sicurezza per l'host e il container 2021-06-10 09:56:26 +02:00

README.md

Miniflux

Descrizione

Sito ufficiale - Repo (Github) - Documentazione

Miniflux è un lettore web di feed dal design minimalista e privacy-friendly:

  • Interfaccia web multilingua e compatibile anche con tablet/smartphone
  • Scorciatoie da trastiera
  • Rimozione automatica dei traccianti (se presenti)
  • Compatibile con le API più comuni e usate

Struttura file e cartelle

/home/
└── docker/
    └── miniflux/
        ├── db/
        ├── .env
        └── docker-compose.yml
  • db/ - cartella dove i dati del database vengono salvati
  • .env - file contenenti le variabili environment per il docker-compose
  • docker-compose.yml - file usato per creare il container

N.B. Tutti i file e le cartelle devono essere creati a mano.

Esempi

Semplice esempio per iniziare ad usare subito il container

docker-compose

docker-compose.yml

version: "3.8"
services:
  db:
    container_name: miniflux-db
    image: postgres:13-alpine
    security_opt:
      - no-new-privileges:true
    networks: 
      - custom-bridge
    restart: always
    env_file: .env
    volumes:
      - ${POSTGRES_DATA:-/home/docker/miniflux/db}:/var/lib/postgresql/data
      - /etc/localtime:/etc/localtime:ro
    healthcheck:
      test: ["CMD", "pg_isready", "-U", "miniflux"]
      interval: 1m30s
      timeout: 10s
      retries: 3
      start_period: 10s

  feeder:
    container_name: miniflux
    image: ghcr.io/miniflux/miniflux
    security_opt:
      - no-new-privileges:true
    networks: 
      - custom-bridge
    restart: unless-stopped
    depends_on:
      - db
    ports:
      - ${MINIFLUX_WEBUI_PORT:-8080}:8080
    env_file: .env
    healthcheck:
      test: ["CMD", "/usr/bin/miniflux", "-healthcheck", "auto"]

networks:
  custom-bridge:
    name: custom-bridge
    driver: bridge

.env

# Generale
POSTGRES_DATA=/home/docker/miniflux/db
MINIFLUX_WEBUI_PORT=8080

# Postgres
POSTGRES_USER=miniflux
POSTGRES_PASSWORD=secret

# Miniflux
DATABASE_URL=postgres://miniflux:secret@db/miniflux?sslmode=disable
RUN_MIGRATIONS=1
CREATE_ADMIN=1
ADMIN_USERNAME=admin
ADMIN_PASSWORD=password

Reverse proxy

Ancora non ho previsto l'uso di un reverse proxy (Vedi Todo)

Aggiornamento

Automatico

Usando watchtower il container si aggiorna automaticamente

Manuale

  1. docker-compose pull
  2. docker-compose up -d
  3. docker image prune

Backup e ripristino

Backup

Usate borg per fare i backup giornalieri dell'intera cartella miniflux

Ripristino

Per una maggiore spiegazione sui passaggi da fare, controllate qua

  1. fermare il container docker-compose down
  2. cancellare l'intera cartella miniflux
  3. dal backup copiare la cartella miniflux
  4. far ripartire il container docker-compose up -d

Todo

Implementare: