# Podgrab
## Descrizione [![Sorgente](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=github&style=flat&label=&message=Sorgente)](https://github.com/akhilrex/podgrab) [![Docker Hub](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=docker&style=flat&label=&message=Docker Hub)](https://hub.docker.com/r/akhilrex/podgrab) ![RPI Friendly]() Podgrab è un server la gestione di podcast: - Interfaccia web moderna, semplice e leggera - Player integrato, ascolto diretto o in streaming direttamente dalla sorgente - Organizzare i podcast in gruppi e usare label - Esportare/importare i propri podcast tramite OPML ## Struttura file e cartelle ``` /home/ └── docker/ └── podgrab/ ├── assets/ ├── config/ ├── .env └── docker-compose.yml ``` - `assets/` - cartella dove vengono salvati i podcast - `config/` - cartella dove risiedono i dati che servono a podgrab - `.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 ### network Con docker ```bash docker network create custom-bridge ``` oppure usando podman ```bash podman network create custom-bridge ``` ### docker-compose `docker-compose.yml` ```yml version: "3.5" services: podgrab: container_name: podgrab image: akhilrex/podgrab security_opt: - no-new-privileges:true networks: - custom-bridge restart: unless-stopped ports: - ${PODGRAB_WEBUI_PORT:-8080}:8080 env_file: .env volumes: - ${PODGRAB_ASSETS:-/home/docker/podgrab/assets}:/assets - ${PODGRAB_CONFIG:-/home/docker/podgrab/config}:/config networks: custom-bridge: name: custom-bridge driver: bridge ``` `.env` ```bash # Generale PODGRAB_WEBUI_PORT=8080 PODGRAB_ASSETS=/home/docker/podgrab/podcasts PODGRAB_CONFIG/home/docker/podgrab/config # Podgrab CHECK_FREQUENCY=30 ``` ## Reverse proxy Vedi [Todo](#Todo) ## Aggiornamento ### Automatico Usando [watchtower](../watchtower) il container si aggiorna automaticamente ### Manuale 1. `docker-compose up -d` 2. `docker image prune` ## Backup e ripristino ### Backup Usate [borg](../borg) per fare i backup giornalieri dell'intera cartella `podgrab` ### Ripristino Per una maggiore spiegazione sui passaggi da fare, controllate [qua](../borg#user-content-controllare-la-cartella-dei-backup) 1. fermare il container con `docker-compose down` 2. cancellare l'intera cartella `podgrab` 3. dal backup copiare la cartella `podgrab` 4. far ripartire il container con `docker-compose up -d` ## Todo Implementare: - reverse proxy: **[caddy](https://caddyserver.com/)** o **[traefik](https://doc.traefik.io/traefik/)** --- Licenza: [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt)