After installation see service.md to configure multi-scrobbler to run automatically in the background.
Clone this repository somewhere and then install from the working directory
git clone https://github.com/FoxxMD/multi-scrobbler.git .
cd multi-scrobbler
nvm use # optional, to set correct Node version
npm install
npm build
npm start
- The web UI is served on port
9078
. This can be modified using thePORT
environmental variable.
Using file-based configuration
npm start
Using env-based configuration
SPOTIFY_CLIENT_ID=yourId SPOTIFY_CLIENT_SECRET=yourSecret MALOJA_URL="http://domain.tld" node src/index.js
You must have Flatpak installed on your system.
flatpak install flathub io.github.foxxmd.multiscrobbler
Using file-based configuration
The config directory for multi-scrobbler as a flatpak can be found under /home/YourUser/.var/app/io.github.foxxmd.multiscrobbler/config
flatpak run io.github.multiscrobbler
Using env-based configuration
There are a few options for running flatpak applications with temporary or permanent environmental variables.
flatpak run --env=SPOTIFY_CLIENT_ID=yourId --envSPOTIFY_CLIENT_SECRET=yourSecret --env=MALOJA_URL="http://domain.tld" io.github.foxxmd.multiscrobbler
Cross-platform images are built for x86 (Intel/AMD) and ARM (IE Raspberry Pi)
foxxmd/multi-scrobbler:latest
Or use the provided docker-compose.yml after modifying it to fit your configuration.
Recommended configuration steps for docker or docker-compose usage:
- If you must bind a host directory into the container for storing configurations and credentials:
- Using
-v
method for docker:-v /path/on/host/config:/config
- Using docker-compose:
- /path/on/host/config:/config
- Using
- (Optionally) map the web UI port in the container 9078 to the host
- With docker:
-p 9078:9078
(first port is the port on the host to use) - With docker-compose:
- "9078:9078"
- With docker:
- (Optionally) set the timezone for the container using the environmental variable
TZ
(docker) (docker-compose)
If you are
- using rootless containers with Podman
- running docker on MacOS or Windows
this DOES NOT apply to you.
If you are running Docker on a Linux Host you must specify user:group
permissions of the user who owns the configuration directory on the host to avoid docker file permission problems. These can be specified using the environmental variables PUID and PGID.
To get the UID and GID for the current user run these commands from a terminal:
id -u
-- prints UIDid -g
-- prints GID
Using env-based configuration
docker run -e "SPOTIFY_CLIENT_ID=yourId" -e "SPOTIFY_CLIENT_SECRET=yourSecret" -e "MALOJA_URL=http://domain.tld" -e "MALOJA_API_KEY=1234" -e "PUID=1000" -e "PGID=1000" -p 9078:9078 -v /path/on/host/config:/config foxxmd/multi-scrobbler
Using file-based configuration
docker run -e "PUID=1000" -e "PGID=1000" -p 9078:9078 -v /path/on/host/config:/config foxxmd/multi-scrobbler
See the docker-compose.yml file for how to use with docker-compose.