Getting Started
Prerequisites
- Docker and Docker Compose installed
- 4GB+ RAM available per server
- Port 3000/TCP open (panel)
- Port 5520+/UDP open (game servers)
Installation
1. Create project folder
mkdir hytale && cd hytale2. Download configuration files
curl -O https://raw.githubusercontent.com/ketbome/hytalepanel/main/docker-compose.yml
curl -O https://raw.githubusercontent.com/ketbome/hytalepanel/main/.env.example3. Configure environment
cp .env.example .envEdit .env with your preferred editor:
# Panel Auth (CHANGE THESE!)
PANEL_USER=admin
PANEL_PASS=your_secure_password
JWT_SECRET=optional-random-string
# Timezone
TZ=America/New_YorkWARNING
Always change the default PANEL_USER and PANEL_PASS before deploying!
4. Start the panel
docker compose up -d5. Access the panel
Open http://localhost:3000 in your browser.
Default credentials:
- User:
admin - Pass:
admin
Creating Your First Server
- Log in to the panel
- Click "Create Server"
- Enter a name (e.g., "My Hytale Server")
- Configure RAM (recommended: 4G min, 8G max)
- Click "Create"
- Click "Enter" to access the server
- Go to Setup tab and click "Download Files"
- Wait for download (~2GB)
- Go to Control tab and click "START"
Your server is now running!
Hytale account required
Server files are downloaded with the official hytale-downloader, which requires signing in with a Hytale account (Early Access). On the first download the Setup tab shows a link and a device code — open the link in any browser, enter the code, and the download continues automatically. Credentials are stored in the server volume, so you only log in once.
Multi-Server Setup
You can create multiple servers, each with:
- Different ports (5520, 5521, 5522, ...)
- Different RAM allocations
- Separate mod configurations
- Independent world data
Port Assignment
Each server needs a unique UDP port. The panel auto-assigns ports starting from 5520.
| Server | Port |
|---|---|
| Server 1 | 5520/UDP |
| Server 2 | 5521/UDP |
| Server 3 | 5522/UDP |
Make sure to open these ports in your firewall.
Common Commands
# View panel logs
docker compose logs -f
# Stop panel
docker compose down
# Update to latest version
docker compose pull && docker compose up -d
# Backup all servers
tar -czvf backup-$(date +%Y%m%d).tar.gz data/Firewall Configuration
Linux (UFW)
# Panel
ufw allow 3000/tcp
# Game servers (adjust range as needed)
ufw allow 5520:5530/udpWindows
# Panel
New-NetFirewallRule -DisplayName "Hytale Panel" -Direction Inbound -Protocol TCP -LocalPort 3000 -Action Allow
# Game servers
New-NetFirewallRule -DisplayName "Hytale Game" -Direction Inbound -Protocol UDP -LocalPort 5520-5530 -Action AllowPorts Summary
| Service | Port | Protocol |
|---|---|---|
| Web Panel | 3000 | TCP |
| Game Server 1 | 5520 | UDP |
| Game Server 2 | 5521 | UDP |
| ... | ... | UDP |
