Skip to main content

Quickstart

This guide will get you up and running with multi-scrobbler using Docker and docker compose. At the end of the guide you will have:

  • the dashboard served on port 9078 of a host machine which has an IP of 192.168.0.100
  • data saved to the same directory as the docker-compose.yml file
  • multi-scrobbler monitoring Spotify and/or Jellyfin for listening activity
  • multi-scrobbler scrobbling to Lastfm and/or Maloja
note

If the multi-scrobbler container is on the same machine you will be viewing the dashboard from (IE localhost) you can remove and ignore BASE_URL usage below. Additionally, replace usage of 192.168.0.100 with localhost.

Create Docker Compose File

Create a new folder for multi-scrobbler related data and then create docker-compose.yml with this content:

~/msData/docker-compose.yml
services:
multi-scrobbler:
image: foxxmd/multi-scrobbler
container_name: multi-scrobbler
environment:
- TZ=Etc/GMT # Specify timezone from TZ Database name found here https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
- BASE_URL=http://192.168.0.100:9078
# all Environmental Variables in below examples go here!

volumes:
- "./config:/config"
ports:
- "9078:9078"
restart: unless-stopped

Setup Sources

Sources are the services multi-scrobbler monitors to look for listening activity.

Follow the Jellyfin configuration instructions for setting up an API Key.

Then, add these values to the environment section in the docker-compose.yml you created.

~/msData/docker-compose.yml
- JELLYFIN_URL=192.168.0.110:8096 # URL to Jellyfin UI
- JELLYFIN_APIKEY=c9fae8756fbf481ebd9c5bb56b # Api Key created in previous step
- JELLYFIN_USER=MyUser # Your username in Jellyfin

Setup Clients

Clients are services that store scrobbles. Multi-scrobbler will scrobble all listening activity from the Sources you configured to all Clients you configure here.

Setup a Maloja server if you have not already done this.

Maloja Setup Intructions

Using Maloja's example docker-compose.yml:

~/malojaData/docker-compose.yml
loading...

Uncomment environment and add MALOJA_FORCE_PASSWORD=CHANGE_ME to set an admin password

Start the container:

~/malojaData
docker compose up -d

Finally, add these values to the environment section in the docker-compose.yml you created for multi-scrobbler earlier.

~/msData/docker-compose.yml
- MALOJA_URL=http://192.168.0.100:42010
- MALOJA_API_KEY=myApiKey

Start Multi-Scrobbler

tip

If you are running your multi-scrobbler container on a Linux host see these instructions for setting proper file permissions.

From the same directory as the docker-compose.yml you created earlier start the container:

~/msData
docker compose up -d

You're done! Multi-scrobbler is now running. It will monitor the sources you configured and scrobble to clients you set up.

Visit http://192.168.0.100:9078 to see the dashboard where

  • configured Sources/Clients
    • show current status and authentication options
    • display statistics about discovered/scrobbled tracks and Now Playing status
  • a real-time log shows multi-scrobbler's activity

Next Steps

  • See more advanced docker options as well as other install methods in the Installation docs
  • Review the Configuration docs
    • Learn about how to configure multi-scrobbler using files for more complicated Source/Client scenarios
    • See all available Sources/Clients alongside configuration examples
    • Learn how to set up notification webhooks
    • Check out the kitchensink example
  • Consult the FAQ for solutions to common problems