-
Notifications
You must be signed in to change notification settings - Fork 10
2. Getting Started
Markus Kuuse edited this page Sep 12, 2025
·
23 revisions
Setting up Explo via Docker or binary
- A self-hosted music system like Emby, Jellyfin, MPD, Plex, or any Subsonic-API compatible system (e.g., Navidrome, Airsonic).
- ListenBrainz scrobbling set up
- Optionally a YouTube Data API key.
- Download docker-compose.yaml file to your system and configure volume mappings
- Make a
.envfile in the directory defined in docker-compose and configure it (refer to sample.env for options or check out Configuration Reference) - Launch the container with
docker compose up -d
| Host Path | Container Path | Description |
|---|---|---|
/path/to/.env |
/opt/explo/.env |
Environment file with configuration parameters. |
/path/to/musiclibrary/explo |
/data/ |
Directory where Explo stores downloaded music. Must match your music system's library path. It's recommended to create an explo subdirectory under your main music library. |
/path/to/slskd/downloads |
/slskd/ |
Path where slskd downloads songs (used if slskd is setup and MIGRATE_DOWNLOADS is set to true in .env) |
/path/to/mpd/playlists |
/path/to/mpd/playlists |
(MPD only) Path to .m3u playlist directory. Set the same path in both the container and your MPD config. |
- ffmpeg and yt_dlp must be installed and available in your
$PATH
(you can also define their paths in the.envfile) - Either:
-
YouTube Data API set in
.env, or - Python ≥3.10 with ytmusicapi installed
-
YouTube Data API set in
- Download the latest release and ensure it's executable
- Make a
.envfile in the same directory as the binary and configure it (refer to sample.env for options or check out Configuration Reference) - Add a Cron job to run Explo weekly:
crontab -eInsert this to the last line to execute Explo every tuesday at 00:15 (ListenBrainz updates its discovery database on Mondays)
15 0 * * 2 cd /path/to/explo && ./explo-linux-amd64Additionally you can import other ListenBrainz genrated playlists using flags, like the "Weekly Jams":
30 0 * * 1 cd /path/to/explo && ./explo-linux-amd64 -p=weekly-jams