Aller au contenu

Installation

Heron tourne en pile Docker Compose sous Linux, sur amd64 ou arm64 (un Raspberry Pi 4 ou 5 suffit pour une petite station).

  • Docker avec Compose v2
  • Un dossier de musique (MP3, AAC ou ALAC en M4A, FLAC, Ogg Vorbis, WAV ou AIFF)
  • Éventuellement, un serveur Icecast vers lequel diffuser. La pile peut en lancer un en local pour essayer.

Clonez le dépôt, ou téléchargez-y docker-compose.yml et .env.example :

Fenêtre de terminal
git clone https://github.com/dehy/heron-broadcaster.git
cd heron-broadcaster

Copiez le fichier d’environnement d’exemple et changez les mots de passe :

Fenêtre de terminal
cp .env.example .env

Réglez au moins :

Variable Valeur
HERON_DB_PASSWORD, HERON_DB_ROOT_PASSWORD Mots de passe de la base : lettres, chiffres, - et _ uniquement
HERON_MUSIC_DIR Votre dossier de musique (par défaut ./data/music)
HERON_LIBRARIAN_USER Le propriétaire de votre musique, en uid:gid : le résultat de id -u et id -g

Créez ensuite les dossiers qu’utilise Heron, ou faites pointer les variables ailleurs :

Fenêtre de terminal
mkdir -p data/music data/fallback data/incoming data/staging

Chaque variable est décrite dans Configuration.

Fenêtre de terminal
docker compose up -d --wait

Compose récupère les images sur ghcr.io/dehy et attend que chaque service soit opérationnel. Les migrations de la base s’exécutent automatiquement au démarrage de heron-api.

Fenêtre de terminal
docker compose exec heron-api heron-api user add admin --role admin

La commande demande un mot de passe (8 caractères au moins).

Ouvrez http://localhost:8000 (ou l’adresse de votre serveur, sur HERON_HTTP_PORT) et connectez-vous.

Heron commence aussitôt à parcourir HERON_MUSIC_DIR. La page Pistes affiche les pistes au fur et à mesure de leur analyse. Ensuite : Premiers pas.

Mettez dans HERON_FALLBACK_DIR (./data/fallback) quelques titres qui conviennent à toute heure (indicatifs, valeurs sûres). Le moteur les joue quand sa file d’attente est vide, par exemple pendant un arrêt de l’API.

Les images sont compilées pour amd64 et arm64, et publiées une fois que toute la pile a passé ses tests sur les deux. Pour les compiler vous-même, ajoutez --build :

Fenêtre de terminal
docker compose up -d --build --wait