This guide explains how to run Beetiful (a web UI for beets) using Docker and Docker Compose.
- Docker
- Docker Compose
- Your music library on disk (FLAC, MP3, etc.)
git clone https://github.com/yourusername/beetiful.git
cd beetifulEdit docker-compose.yml and set the correct path to your music library:
volumes:
- /path/to/your/music:/music:ro # <-- Change this to your music folder
- ./config:/config # Beets config and database
- beetiful_data:/app/instance # App state (optional)You can also adjust the exposed port (default: 3000).
docker compose up -dOpen your browser and go to:
- The beets config is stored in the
configdirectory (mounted as/config). - Use the web UI to edit config, enable plugins, and manage your library.
To update Beetiful:
git pull
docker compose build --no-cache
docker compose up -d- No music appears: Check your music path and permissions.
- Lyrics not showing: Ensure the
lyricsfield is present in your beets library. Use the web UI or run:docker exec -it beetiful beet ls -f '$lyrics' id:<track_id>
- Permission errors: Make sure the
configandmusicfolders are readable by the container user.
MIT