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.

GitHub
hytale-server-docker logo

Self-host hytale-server-docker

1.0.6

Docker container for Hytale server with auto-updates

ReleaseOpen SourceGPL-3.0
Updated6 months ago
LanguageShell
Setup difficultyModerate
Stars
212
CPU
4 cores
RAM
4GB
Storage
10GB
Port
5520 (Hytale server QUIC/UDP)
Docker
indifferentbroccoli/hytale-server-docker
Install with Docker

What is hytale-server-docker?

Hytale Server Docker packages the Hytale dedicated game server into a container. The image ships with Java 25 and the official downloader CLI, which fetches and updates server files automatically when the container starts. Game traffic uses QUIC over UDP on port 5520. On ARM64 and Apple Silicon the downloader runs through QEMU while the Java runtime executes directly on the architecture. Settings such as server name, port, player limit, view distance, authentication mode, backup schedule, JVM heap, and patchline are controlled via environment variables. Initial launch requires the operator to complete an OAuth flow in a browser using a Hytale account. Deployment examples for Docker Compose and plain docker run are provided.

Should you self-host hytale-server-docker?

hytale-server-docker scores 49/100 on selfhost.directory (how scoring works) and ranks #34 of 62 in Game Servers. It has 212 GitHub stars.

It shipped 7 stable releases in the past year. The latest, 1.0.6, came out on 22 January 2026. New versions land roughly every 1 days.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is GPL-3.0-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 hytale-server-docker vs minecraft side by side.

Features

  • AOT compilation cache
  • ARM64/Apple Silicon support
  • Automatic server download and updates
  • Automatic world backups
  • Configurable view distance
  • Console command execution
  • Health Check
  • Java 25 included
  • Mod support
  • OAuth Authentication
  • Offline authentication mode
  • Patchline selection
  • QUIC over UDP networking

hytale-server-docker README

How to install hytale-server-docker

Install hytale-server-docker with Docker

Docker installed
Environment variables
PUID, PGID, SERVER_NAME, DEFAULT_PORT, MAX_PLAYERS, VIEW_DISTANCE, AUTH_MODE, ENABLE_BACKUPS, BACKUP_FREQUENCY, BACKUP_MAX_COUNT, BACKUP_DIR, DISABLE_SENTRY, USE_AOT_CACHE, ACCEPT_EARLY_PLUGINS, MIN_MEMORY, MAX_MEMORY, JVM_ARGS, PATCHLINE, DOWNLOAD_ON_START, AUTH_SELECT_PROFILE

docker run -d
--restart unless-stopped
--name hytale
--stop-timeout 30
-p 5520:5520/udp
--env-file .env
-v ./server-files:/home/hytale/server-files
-it
indifferentbroccoli/hytale-server-docker

Requires .env file copied from .env.example

How to configure hytale-server-docker

  • ACCEPT_EARLY_PLUGINSfalseAllow early plugins (may cause stability issues)

    Allow early plugins (may cause stability issues)

    values: true|false

  • AUTH_MODEauthenticatedAuthentication mode: authenticated or offline

    Authentication mode: authenticated or offline

    values: authenticated|offline

  • AUTH_SELECT_PROFILE1Sets which profile to auth the server to if multiple are linked to the account

    Sets which profile to auth the server to if multiple are linked to the account

  • BACKUP_DIR/home/hytale/server-files/backupsDirectory path for storing backups

    Directory path for storing backups

  • BACKUP_FREQUENCY30Backup interval in minutes (if backups are enabled)

    Backup interval in minutes (if backups are enabled)

  • BACKUP_MAX_COUNT5How many previous backups to retain

    How many previous backups to retain

  • DEFAULT_PORT5520The port the server listens on (UDP only)

    The port the server listens on (UDP only)

  • DISABLE_SENTRYtrueDisable Sentry crash reporting

    Disable Sentry crash reporting

    values: true|false

  • DOWNLOAD_ON_STARTtrueAutomatically download/update server files on startup

    Automatically download/update server files on startup

    values: true|false

  • ENABLE_BACKUPSfalseEnable automatic world backups

    Enable automatic world backups

    values: true|false

  • JVM_ARGSCustom JVM arguments (optional)

    Custom JVM arguments (optional)

  • MAX_MEMORY8GMaximum JVM heap size (e.g., 8G, 8192M)

    Maximum JVM heap size (e.g., 8G, 8192M)

  • MAX_PLAYERS20Maximum number of players allowed on the server

    Maximum number of players allowed on the server

  • MIN_MEMORYMinimum JVM heap size (e.g., 4G). Leave unset to omit -Xms flag

    Minimum JVM heap size (e.g., 4G). Leave unset to omit -Xms flag

  • PATCHLINEreleaseSelects the patchline for the game (release or pre-release)

    Selects the patchline for the game (release or pre-release)

    values: release|pre-release

  • PGID1000Group ID for file permissions

    Group ID for file permissions

  • PUID1000User ID for file permissions

    User ID for file permissions

  • SERVER_NAMEhytale-server-dockerName of the server

    Name of the server

  • USE_AOT_CACHEtrueUse Ahead-of-Time compilation cache for faster startup

    Use Ahead-of-Time compilation cache for faster startup

    values: true|false

  • VIEW_DISTANCE12View distance in chunks (12 chunks = 384 blocks). Higher values require more RAM

    View distance in chunks (12 chunks = 384 blocks). Higher values require more RAM

hytale-server-docker releases & version history

More in Game Servers

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…