selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

core-keeper-dedicated logo

Self-host core-keeper-dedicated

2.8.1

Docker image for self-hosted Core Keeper game server

ReleaseOpen SourceMIT
Updated8 months ago
LanguageShell
Setup difficultyEasy
Stars
238
Docker
escaping/core-keeper-dedicated
Install with Docker
core-keeper-dedicated screenshot 1

What is core-keeper-dedicated?

Core Keeper Dedicated Server is a Docker image that automates the setup and operation of a dedicated server for the mining sandbox game Core Keeper. It handles SteamCMD installation, game updates, and configuration via environment variables. The server supports two network modes: Steam Datagram Relay (SDR) which requires no port forwarding and hides the server IP, and Direct Connection mode for lower latency. Features include mod.io integration for automatic mod installation, Discord webhook notifications for player join/leave and server events, configurable world settings (seed, mode, season), and ARM64 support for Raspberry Pi and Apple Silicon devices. The image is published on Docker Hub as escaping/core-keeper-dedicated and the source is on GitHub under the MIT license.

Should you self-host core-keeper-dedicated?

core-keeper-dedicated scores 49/100 on selfhost.directory (how scoring works) and ranks #34 of 62 in Game Servers. It has 238 GitHub stars.

It shipped 4 stable releases in the past year. The latest, 2.8.1, came out on 27 February 2026. New versions land roughly every 7 days.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is MIT-licensed and written mostly in Shell.

Its closest alternative on selfhost.directory is minecraft (78/100, 14 491 stars). It scores higher overall, so compare the two before you pick. See core-keeper-dedicated vs minecraft side by side.

Features

  • ARM64 Support
  • Automatic game updates
  • Configurable World Settings
  • Direct Connection mode
  • Discord Webhook Notifications
  • Mod.io Mod Installation
  • Platform Restriction
  • Steam Datagram Relay (SDR)

core-keeper-dedicated README

How to install core-keeper-dedicated

Install core-keeper-dedicated with Docker

docker run -d
--name core-keeper-dedicated
-e WORLD_NAME="Core Keeper Server"
-e MAX_PLAYERS=5
-v /host/path/to/server-data:/home/steam/core-keeper-data
-v /host/path/to/server-files:/home/steam/core-keeper-dedicated
escaping/core-keeper-dedicated:latest

Requires creating server-data and server-files directories on host

How to configure core-keeper-dedicated

  • ACTIVATE_ALL_CONTENTfalseActivates all content bundles.

    Activates all content bundles.

    values: true, false

  • ACTIVATE_CONTENTComma-separated list to turn on biomes for worlds created prior to v1.1. Once enabled, cannot be disabled.

    Comma-separated list to turn on biomes for worlds created prior to v1.1. Once enabled, cannot be disabled.

    values: GiantCicadaBossDungeon, NatureBiomeCicadas, GuaranteedOases, BiomeStatues, AbioticFactor

  • ALLOW_ONLY_PLATFORMAllow only players from given platform (only works with direct connection mode).

    Allow only players from given platform (only works with direct connection mode).

    values: 1=Steam, 2=Epic, 3=Microsoft, 4=GOG

  • ARM64_DEVICEgenericThe Box64 build variants for ARM64 devices.

    The Box64 build variants for ARM64 devices.

    values: generic, rpi5, m1, adlink

  • DISCORD_PLAYER_JOIN_COLOR47456Embed color for player join.

    Embed color for player join.

  • DISCORD_PLAYER_JOIN_ENABLEDtrueEnable/disable message on player join.

    Enable/disable message on player join.

    values: true, false

  • DISCORD_PLAYER_JOIN_MESSAGE"$${char_name} ($${steamid}) has joined the server."Embed message for player join.

    Embed message for player join.

  • DISCORD_PLAYER_JOIN_TITLEPlayer JoinedEmbed title for player join.

    Embed title for player join.

  • DISCORD_PLAYER_LEAVE_COLOR11477760Embed color for player leave.

    Embed color for player leave.

  • DISCORD_PLAYER_LEAVE_ENABLEDtrueEnable/disable message on player leave.

    Enable/disable message on player leave.

    values: true, false

  • DISCORD_PLAYER_LEAVE_MESSAGE"$${char_name} ($${steamid}) has disconnected. Reason: $${reason}."Embed message for player leave.

    Embed message for player leave.

  • DISCORD_PLAYER_LEAVE_TITLEPlayer LeftEmbed title for player leave.

    Embed title for player leave.

  • DISCORD_SERVER_START_COLOR2013440Embed color for server start.

    Embed color for server start.

  • DISCORD_SERVER_START_ENABLEDtrueEnable/disable message on server start.

    Enable/disable message on server start.

    values: true, false

  • DISCORD_SERVER_START_MESSAGE"**World:** $${world_name}\n**GameID:** $${gameid}"Embed message for server start. Variables: world_name, gameid, allowed_platforms, public_ip, port, password, join_string.

    Embed message for server start. Variables: world_name, gameid, allowed_platforms, public_ip, port, password, join_string.

  • DISCORD_SERVER_START_TITLEServer StartedEmbed title for server start.

    Embed title for server start.

  • DISCORD_SERVER_STOP_COLOR12779520Embed color for server stop.

    Embed color for server stop.

  • DISCORD_SERVER_STOP_ENABLEDtrueEnable/disable message on server stop.

    Enable/disable message on server stop.

    values: true, false

  • DISCORD_SERVER_STOP_MESSAGEEmbed message for server stop.

    Embed message for server stop.

  • DISCORD_SERVER_STOP_TITLEServer StoppedEmbed title for server stop.

    Embed title for server stop.

  • DISCORD_WEBHOOK_URLDiscord webhook URL for notifications.

    Discord webhook URL for notifications.

  • GAME_IDGame ID to use for the server. Must be 15-28 alphanumeric characters. Empty generates a new ID at start.

    Game ID to use for the server. Must be 15-28 alphanumeric characters. Empty generates a new ID at start.

  • HASHED_WORLD_SEEDThe hashed seed to use for a new world, added in v1.1. Set to empty to generate random seed.

    The hashed seed to use for a new world, added in v1.1. Set to empty to generate random seed.

  • MAX_PLAYERS10Maximum number of players allowed to connect to server.

    Maximum number of players allowed to connect to server.

  • MODIO_API_KEYmod.io API key for mod installation.

    mod.io API key for mod installation.

  • MODIO_API_URLmod.io API path (e.g. https://u-*.modapi.io/v1).

    mod.io API path (e.g. https://u-*.modapi.io/v1).

  • MODSComma-separated list of mods to install (format: mod_id[:version]).

    Comma-separated list of mods to install (format: mod_id[:version]).

  • MODS_ENABLEDfalseEnable/disable mod support.

    Enable/disable mod support.

    values: true, false

  • PASSWORDPassword for direct connections. Max 28 characters. Empty generates random password.

    Password for direct connections. Max 28 characters. Empty generates random password.

  • PGID1000The group ID on the host that the container should use for file ownership and permissions.

    The group ID on the host that the container should use for file ownership and permissions.

  • PUID1000The user ID on the host that the container should use for file ownership and permissions.

    The user ID on the host that the container should use for file ownership and permissions.

  • SEASONOverrides current season. Do not set if you want real date season.

    Overrides current season. Do not set if you want real date season.

    values: 0=None, 1=Easter, 2=Halloween, 3=Christmas, 4=Valentine, 5=Anniversary, 6=CherryBlossom, 7=LunarNewYear

  • SERVER_IP0.0.0.0Address the server will bind to (only used if port is set). Supports IPv4 and IPv6.

    Address the server will bind to (only used if port is set). Supports IPv4 and IPv6.

  • SERVER_PORTPort used for direct connection mode. Setting a value switches from SDR to Direct Connect mode.

    Port used for direct connection mode. Setting a value switches from SDR to Direct Connect mode.

  • USE_DEPOT_DOWNLOADERfalseUse Depot downloader instead of steamcmd. Useful for systems not compatible with 32 bits.

    Use Depot downloader instead of steamcmd. Useful for systems not compatible with 32 bits.

    values: true, false

  • WORLD_INDEX0Which world index to use.

    Which world index to use.

  • WORLD_MODE0Sets the world mode for the world.

    Sets the world mode for the world.

    values: 0=Normal, 1=Hard, 2=Creative, 4=Casual

  • WORLD_NAMECore Keeper ServerThe name to use for the server.

    The name to use for the server.

  • WORLD_SEEDThe seed to use for a new world. Set to empty to generate random seed.

    The seed to use for a new world. Set to empty to generate random seed.

core-keeper-dedicated releases & version history

More in Game Servers

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…