A container wrapping the official Hytale server downloader for automatic updates and easy container access.
  • Shell 82.5%
  • Dockerfile 17.5%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
@SakulFlee | Lukas Weber aa57233f3f
All checks were successful
Build and Publish Container / build-and-push (push) Successful in 1m22s
fix: publish container image to containers/hytale (match deployment pull path)
The Forgejo CI was pushing to sakulflee/hytale while the deployment (and
docs) pull from containers/hytale, so new builds never reached running pods.
Point the push target at containers/hytale for both :latest and :<tag>.
2026-08-29 00:34:32 +02:00
.forgejo/workflows fix: publish container image to containers/hytale (match deployment pull path) 2026-08-29 00:34:32 +02:00
.github/workflows Merge pull request 'Update docker/build-push-action action to v7' (#7) from renovate/docker-build-push-action-7.x into main 2026-08-28 20:13:00 +00:00
Containerfile Revert "Added NYO Mod Manager" 2026-01-30 05:35:47 +01:00
entrypoint.sh fix: fetch hytale-downloader at runtime and auto re-auth on invalid_grant 2026-08-29 00:18:51 +02:00
README.md fix: fetch hytale-downloader at runtime and auto re-auth on invalid_grant 2026-08-29 00:18:51 +02:00
renovate.json Add renovate.json 2026-01-26 04:00:24 +00:00

📦 Hytale Container Image

Origin: Forgejo Mirror: GitHub

A feature rich Container image for running Hytale servers!

Features

  • Authentication token caching
  • Automatic updating upon restart
  • The hytale-downloader is fetched fresh at container startup, so the binary always stays current regardless of how old the image (or its build cache) is. The bundled binary is only used as a fallback if the fetch fails.
  • [Planned] Mod downloading

Note

If the downloader reports oauth2: "invalid_grant" (or a similar auth error) it means the refresh token in your credentials is expired or revoked, not that the downloader is broken. The launcher detects this and, on the next start, automatically drops into a browser-based device re-authentication: watch the logs (podman logs -f hytale) for the authorization URL and code, authenticate in your browser, and the download continues automatically. Alternatively, regenerate credentials.json and update your secret.

Running

First, start the container:

# Or use docker!
podman run \
    -itd \
    --name hytale \
    -v hytale:/opt/hytale:U
    -p 5520:5520
    forgejo.sakul-flee.de/containers/hytale:latest

Next, the Hytale downloader needs to be authorized. Check the container logs and follow the instructions:

podman logs -f hytale

After authorization, the latest server files will be downloaded and prepared. This may take a few minutes based on your internet connection.

Eventually, the Hytale server should start. Once again, it has to be authorized first. Exit the logs and attach to the container instead:

podman attach -it hytale

You should have full access to the Hytale server console now. In the console enter and follow the instructions:

auth login device

Your server should be running and authenticated now. However, this is only a temporary authentication! To make this permanent enter:

auth persistence Encrypted

Now, your server should be authenticated even after restarting the container.

Warning

This container automatically checks for updates upon (re-)starting! The server will be updated assuming there is a new version and your credentials are still valid. Otherwise, you will be prompted to re-authenticate.

None of your save game, mods, configs, etc. should be affected by this!
Only the server files will be overwritten!
However, mods might struggle after an update.

Volumes

Path in container Description
/opt/hytale Location of the whole Hytale server. This includes saves ("Universe"), mods, configs and server files.

Ports

Port Protocol Description
5520 UDP Hytale Game Port

License

This project is licensed under Apache License 2.0.