Explore an endless cavern of creatures, relics and resources in a mining sandbox adventure for 1-8 players. Mine, build, fight, craft and farm to unravel the mystery of the ancient Core.
docker build https://raw.githubusercontent.com/xalimar/core-keeper-dedicated/main/buster/Dockerfile -t core-keeper-dedicated:latest
docker volume create steamcmd_login_volume
docker volume create steamcmd_volume
docker volume create steam_app_volume
docker volume create corekeeper_save_volume
Unfortunately Core Keeper doesn't allow anonymous access to download the game, so we have to authenticate one-time to save this container as a trusted device.
docker run -it --rm \
-v "steamcmd_login_volume:/home/steam/Steam" \
-v "steamcmd_volume:/home/steam/steamcmd" \
core-keeper-dedicated \
steamcmd/steamcmd.sh +login <steamuser> +quit
Even though we authenticated above, we still have to pass our username and password to authenticate to check for updates. This won't work if you have Steam Guard MFA enabled on your phone, it will prompt for the code on every launch. If you are only using the emailed Steam Guard code, the authentication we did above should have cached the device for future launches.
docker run -d --net=host --name=core-keeper-dedicated \
-v "steamcmd_login_volume:/home/steam/Steam" \
-v "steamcmd_volume:/home/steam/steamcmd" \
-v "steam_app_volume:/home/steam/core-keeper-dedicated" \
-v "corekeeper_save_volume:/home/steam/.config/unity3d/Pugstorm/Core Keeper" \
-e STEAMUSER=<steam user> \
-e STEAMPASS=<steam password> \
core-keeper-dedicated
You'll need this ID to join the game. You can press ctrl-c to stop watching the logfile
docker logs -f core-keeper-dedicated
Make sure to connect to the server for a few minutes so an initial 0.world.gzip
save is created in the Docker volume. Then, stop the server container
docker stop core-keeper-dedicated
Locate your world file, for example it will be in a similar path to this. I highly recommend backing this up so you don't accidentally overwrite the wrong file.
C:\Users\<username>\AppData\LocalLow\Pugstorm\Core Keeper\Steam\<id>\worlds
It will be named 0.world.gzip
. Copy that to the docker corekeeper_save_volume
and overwrite the existing 0.world.gzip
. With docker desktop on windows, you can find it here:
\\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes\corekeeper_save_volume\_data\experimental\DedicatedServer\worlds
On Linux it will probably be located here:
/var/lib/docker/volumes/corekeeper_save_volume/_data/experimental/DedicatedServer/worlds
Finally, restart the container:
docker start core-keeper-dedicated