Docker

Note

Stump will have an official Docker image available when the first beta release is published.

Until then, you may use a preview image available on a separate Dockerhub repository. This image will not be frequently updated and should be used for testing purposes only, so do not expect a fully featured, bug-free experience if you spin up a container.

You have two options for spinning up a container based on your preference. I prefer using compose, however I have listed instructions for both Docker CLI and Docker Compose below.

Please ensure to adjust PUID and PGID to the user your config and data directories belong to. You can print those by executing: echo -e "PUID=$(id -u)\nPGID=$(id -g)"

You can create a container by running:

# replace my paths (left of colon) with your own
docker create \
  --name=stump \
  -e "PUID=1000" \
  -e "PGID=1000" \
  -p 10801:10801 \
  --volume "/Users/aaronleopold/.stump:/config" \
  --volume "/Users/aaronleopold/Documents/Stump:/data" \
  --restart unless-stopped \
  aaronleopold/stump-preview

If you prefer bind mounts, you can swap out the two --volume lines with:

--mount type=volume,source=/Users/aaronleopold/.stump,target=/config \
--mount type=volume,source=/Users/aaronleopold/Documents/Stump,target=/data \

Then you can start the container:

docker start stump
ParameterFunctionality
--name=stumpSets the name of the container this command will create
-e "PUID=1000" -e "PGID=1000"Sets the user and group used within the container (leave this as is)
-p 10801:10801Maps the port on your machine (left) to the port the container uses (right)
docker compose vs docker-compose

This tutorial uses the newer docker compose CLI. If you find this command does not exist for you, you might be on V1, which uses docker-compose. Please review Docker's documentation for more information and/or platform-specific installation.

Below is an example of a Docker Compose file you can use to bootstrap your Stump server:

version: '3.3'
services:
  stump:
    image: aaronleopold/stump-preview
    container_name: stump
    # Replace my paths (prior to the colons) with your own
    volumes:
      - /Users/aaronleopold/.stump:/config
      - /Users/aaronleopold/Documents/Stump:/data
    ports:
      - 10801:10801
    environment:
      - PUID=1000
      - PGID=1000
      # This `environment` field is optional, remove if you don't need it.
      # I am using it as an example here, but it's actually a default value.
      - STUMP_CONFIG_DIR=/config
    restart: unless-stopped

To monitor the logs of the container, you can use the following command:

docker logs -f stump

As with starting Stump, updating your container is slightly different depending on how you chose to run it.

  • Update the image: docker pull aaronleopold/stump-preview
  • Stop the running container: docker stop stump
  • Delete the container: docker rm stump
  • Recreate your container (see using-docker-run)
  • Start the new container: docker start stump

To remove the old dangling images you have installed: docker image prune

  • Stop the running container: docker compose down
  • Update the image: docker compose pull or docker compose pull aaronleopold/stump-preview
  • Start the container again: docker-compose up