| .forgejo/workflows | ||
| .github/workflows | ||
| examples | ||
| .gitattributes | ||
| docker-compose.yml | ||
| Dockerfile | ||
| entrypoint.sh | ||
| LICENSE | ||
| README.md | ||
Hytale Server Docker
🐳 Alpine-based Docker image for Hytale servers with auto-setup and OAuth2 support.
This repository provides a Docker image to easily set up and run a Hytale server using Docker. The image is based on Alpine Linux for a lightweight footprint and includes an automatic setup process that downloads the necessary server files.
Usage
I recommend using Docker Compose for easy management of the Hytale server container. Create a docker-compose.yml file with the following content:
services:
hytale:
image: ghcr.io/zuedev/hytale-server-docker
ports:
- "5520:5520/udp"
volumes:
- ./data:/app/Hytale
restart: unless-stopped
stdin_open: true
tty: true
Then, run the following command to start the server:
docker compose up -d
Then you will need to check the container logs to see the progress of the server setup, as well as authentication instructions:
docker compose logs -f hytale
Once the Hytale server itself is downloaded and running, you will need to attach to it to complete the OAuth2 setup:
docker compose attach hytale
Type auth login device in the container terminal and follow the instructions to authenticate your server. Once authenticated, you can detach from the container by pressing Ctrl + P followed by Ctrl + Q.
Authentication Persistence
I recommend running auth persistence Encrypted within the container to ensure that your authentication tokens are saved securely and persist across container restarts. Make sure to reauthenticate after running this command to store the tokens.
Configuration
The following environment variables can be used to configure the Hytale server:
| Variable | Default | Description |
|---|---|---|
HYTALE_MINIMUM_MEMORY |
128M |
Minimum memory allocation for the JVM |
HYTALE_MAXIMUM_MEMORY |
90% of system memory | Maximum memory allocation for the JVM |
HYTALE_SERVER_PORT |
5520 |
Port the server binds to |
HYTALE_PARAMETERS |
(see below) | Override all JVM/server parameters |
HYTALE_ADDITIONAL_PARAMETERS |
(none) | Append additional parameters to the default |
HYTALE_SERVER_NAME |
(none) | Override ServerName in config.json |
HYTALE_MOTD |
(none) | Override MOTD in config.json |
HYTALE_PASSWORD |
(none) | Override Password in config.json |
HYTALE_MAX_PLAYERS |
(none) | Override MaxPlayers in config.json |
HYTALE_MAX_VIEW_RADIUS |
(none) | Override MaxViewRadius in config.json |
Example with Custom Memory Settings
services:
hytale:
image: ghcr.io/zuedev/hytale-server-docker
ports:
- "5520:5520/udp"
volumes:
- ./data:/app/Hytale
environment:
- HYTALE_MINIMUM_MEMORY=512M
- HYTALE_MAXIMUM_MEMORY=4096M
restart: unless-stopped
stdin_open: true
tty: true
Legal
This project is not affiliated with or endorsed by Hypixel Studios. Hytale and all related trademarks are the property of their respective owners. This project is intended for educational and personal use only.
License
This project is released into the public domain under The Unlicense.