Back to top

Docker

Using A Published Image

You can use the Euterpe Docker image in order to try it out or actually deploy it.

docker run -v "${HOME}/Music/:/root/Music" -p 8080:9996 ironsmile/euterpe:latest euterpe

Then point your browser to https://localhost:8080 and you will see the Euterpe web UI. The -v flag in the Docker command will mount your $HOME/Music directory to be discoverable by Euterpe.

Building the Image Yourself

First clone the git repository and then building image is as simple as running the following

docker build -t ironsmile/euterpe github.com/ironsmile/euterpe

The euterpe binary there is placed in /usr/local/bin/euterpe.

Once image is built you can start the same way as for published images.

Preserve Configuration and Database

Using the commands shown so far does have a downside and it is that the configuration file and the database will be wiped and created anew on every container start. The same goes for the program logs too. This is, probably, not very useful feature. One might want to preserve them between runs. One way is to use Docker volumes. First, create a volume for your Euterpe installation:

docker volume create euterpe-data

And then the command for starting the container will become

docker run -v "euterpe-data:/root/.euterpe" \
    -v "${HOME}/Music/:/root/Music" \
    -p 8080:9996 \
    ironsmile/euterpe:latest euterpe

Now the logs, the database and the server configuration will persist between starting and stopping the container.

Obviously, you are free to use any other way for managing volumes. But explaining things such as Kubernetes and Docker Compose are outside of the scope of this documentation.