Sign inSign up

supersunho/palworld-server

By supersunho

โ€ขUpdated 21 days ago

๐ŸŽฎ ARM64-optimized Palworld dedicated server with FEX

Image
0

3.2K

supersunho/palworld-server repository overview

โ ๐ŸŽฎ Palworld Dedicated Server For ARM64

๐Ÿš€ Production-ready ARM64 optimized Palworld server with FEX + SteamCMD integration

โ ๐ŸŒŸ What Makes This Special?

โ ๐Ÿ”ง World's First ARM64-Optimized Palworld Server
  • Revolutionary FEX Integration: 3-5x faster than QEMU on ARM64
  • Apple Silicon Ready: M1/M2/M3 Macs with native performance
  • Raspberry Pi Support: Perfect for home servers and edge computing
  • AWS Graviton Optimized: Cloud-native ARM64 deployment
โ ๐Ÿค– Intelligent Auto-Management
  • ๐Ÿ”„ Smart Idle Restart: Automatically restart when no players for configurable time
  • ๐Ÿ“Š Advanced Health Monitoring: CPU, memory, disk, and API health checks with auto-recovery
  • ๐Ÿ’พ Enterprise Backup System: Daily/weekly/monthly rotation with intelligent cleanup
  • ๐ŸŽฏ Zero-Downtime Updates: SteamCMD integration with graceful server management
โ ๐ŸŒ Multi-Language Discord Integration
  • Real-time Notifications: Player join/leave, server events, backup completion
  • 4 Languages Supported: Korean, English, Japanese, Chinese
  • Smart Event Filtering: Configurable notification preferences
  • Rich Embeds: Beautiful Discord messages with server status

โ ๐Ÿš€ Quick Start

โ ๐Ÿณ One-Command Deploy
docker run -d \
  --name palworld-server \
  -p 8211:8211/udp \
  -p 8212:8212/tcp \
  -p 25575:25575/tcp \
  -v palworld-data:/home/steam/palworld_server \
  -v palworld-backups:/home/steam/backups \
  supersunho/palworld-server:latest
version: '3.8'
services:
  palworld-server:
    image: supersunho/palworld-server:latest
    container_name: palworld-server
    restart: unless-stopped
    ports:
      - "8211:8211/udp"  # Game Server
      - "8212:8212/tcp"  # REST API
      - "25575:25575/tcp" # RCON
    environment:
      - SERVER_NAME=๐ŸŽฎ My Palworld Server
      - MAX_PLAYERS=32
      - ADMIN_PASSWORD=your-secure-password 
    volumes:
      - palworld-data:/home/steam/palworld_server
      - palworld-backups:/home/steam/backups
      - palworld-logs:/home/steam/logs

volumes:
  palworld-data:
  palworld-backups:
  palworld-logs:

โ โš™๏ธ Configuration

โ ๐Ÿ”ง Essential Environment Variables
VariableDefaultDescription
SERVER_NAME"Palworld Server"๐Ÿท๏ธ Server display name
SERVER_PASSWORD""๐Ÿ”’ Server join password
ADMIN_PASSWORD"admin123"๐Ÿ‘‘ Admin/RCON password
MAX_PLAYERS32๐Ÿ‘ฅ Maximum player count (1-32)
BACKUP_ENABLEDtrue๐Ÿ’พ Enable automatic backups
DISCORD_WEBHOOK_URL""๐Ÿ’ฌ Discord webhook for notifications
LANGUAGEko๐ŸŒ Language (ko/en/ja)
โ โฐ NEW: Idle Restart Feature
VariableDefaultDescription
IDLE_RESTART_ENABLEDtrue๐Ÿ”„ Enable auto-restart when no players
IDLE_RESTART_MINUTES30โฑ๏ธ Minutes to wait before restart
DISCORD_EVENT_IDLE_RESTARTtrue๐Ÿ“ฃ Discord notification for idle restarts
โ ๐ŸŽฎ Game Settings (150+ configurable options)
VariableDefaultDescription
DIFFICULTYNone๐ŸŽฏ Game difficulty
IS_PVPfalseโš”๏ธ Enable PvP mode
DAY_TIME_SPEED_RATE1.0โ˜€๏ธ Day time speed multiplier
EXP_RATE1.0๐Ÿ“ˆ Experience gain rate
PAL_CAPTURE_RATE1.0๐ŸŽฏ Pal capture difficulty

๐Ÿ“„ Complete Environment Variables Listโ 

โ ๐ŸŽฏ ARM64 Performance Revolution

โ Why FEX Matters

Traditional ARM64 emulation (QEMU) is slow and resource-heavy. Our FEX integration changes everything:

PlatformBoot TimeMemory UsageCPU Usage
ARM64 + FEX~2 minutes~1.2GB~15%
x86_64 Native~2 minutes~1.0GB~12%
ARM64 + QEMU~8 minutes~2.1GB~45%
โ Optimized FEX Configuration
# Automatically applied in our container
FEX_ENABLE_JIT_CACHE=1
FEX_JIT_CACHE_SIZE=1024
FEX_ENABLE_LAZY_MEMORY_DELETION=1
FEX_ENABLE_STATIC_REGISTER_ALLOCATION=1

โ ๐Ÿ“Š Advanced Features

โ ๐Ÿ”„ Smart Idle Management
# Automatically restart server when empty
IDLE_RESTART_ENABLED=true
IDLE_RESTART_MINUTES=30

# Discord notification in your language
๐Ÿ‡บ๐Ÿ‡ธ "โฐ No players for 30 minutes. Restarting server (My Server)."
๐Ÿ‡ฐ๐Ÿ‡ท "โฐ 30๋ถ„ ๋™์•ˆ ์ ‘์†์ž๊ฐ€ ์—†์–ด ์„œ๋ฒ„(My Server)๋ฅผ ์žฌ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค."
๐Ÿ‡ฏ๐Ÿ‡ต "โฐ 30ๅˆ†้–“ใƒ—ใƒฌใ‚คใƒคใƒผใŒใ„ใชใ‹ใฃใŸใŸใ‚ใ€ใ‚ตใƒผใƒใƒผ(My Server)ใ‚’ๅ†่ตทๅ‹•ใ—ใพใ™ใ€‚"
โ ๐Ÿ’พ Enterprise Backup System
backup:
  enabled: true
  interval_seconds: 3600    # Hourly backups
  retention_days: 7         # Keep daily for 7 days
  retention_weeks: 4        # Keep weekly for 4 weeks
  retention_months: 6       # Keep monthly for 6 months
  compress: true            # Gzip compression
  max_backups: 100          # Total backup limit
โ ๐Ÿ“ก REST API & RCON
# REST API endpoints
curl http://localhost:8212/v1/api/info
curl http://localhost:8212/v1/api/players
curl http://localhost:8212/v1/api/settings

# RCON commands
rcon-cli --host localhost --port 25575 --password admin123 ShowPlayers
rcon-cli --host localhost --port 25575 --password admin123 "Broadcast Hello!"
โ ๐Ÿฉบ Health Monitoring
# Built-in health check
docker exec palworld-server python /app/scripts/healthcheck.py

# Automatic recovery on failures
# CPU > 90%, Memory > 95%, API timeouts = auto-restart

โ ๐Ÿ› ๏ธ Advanced Usage

โ Multi-Arch Build Commands
# Clone repository
git clone https://github.com/supersunho/docker-palworld-server.git
cd docker-palworld-server

# Build for your platform
docker build -t palworld-server .

# Build
docker buildx build --platform linux/arm64 -t palworld-server .
โ Custom Configuration File
# Mount your own configuration
docker run -d \
  -v ./my-config.yaml:/app/config/default.yaml \
  -v palworld-data:/home/steam/palworld_server \
  supersunho/docker-palworld-server:latest
โ Development Mode
# Run with development tools
docker run -it --rm \
  -v $(pwd):/app \
  -p 8211:8211/udp \
  supersunho/palworld-server:latest bash

โ ๐ŸŒ Multi-Language Discord Notifications

โ Supported Languages
  • ๐Ÿ‡ฐ๐Ÿ‡ท Korean (ko) - ํ•œ๊ตญ์–ด ์•Œ๋ฆผ
  • ๐Ÿ‡บ๐Ÿ‡ธ English (en) - English notifications
  • ๐Ÿ‡ฏ๐Ÿ‡ต Japanese (ja) - ๆ—ฅๆœฌ่ชž้€š็Ÿฅ
โ Example Notifications
Player Join:
๐Ÿ‡บ๐Ÿ‡ธ "๐ŸŽฎ Player joined: Steve (5 players online)"
๐Ÿ‡ฐ๐Ÿ‡ท "๐ŸŽฎ ํ”Œ๋ ˆ์ด์–ด ์ฐธ๊ฐ€: Steve (ํ˜„์žฌ 5๋ช…)"
๐Ÿ‡ฏ๐Ÿ‡ต "๐ŸŽฎ ใƒ—ใƒฌใ‚คใƒคใƒผๅ‚ๅŠ : Steve (็พๅœจ5ไบบ)"

Server Restart:
๐Ÿ‡บ๐Ÿ‡ธ "๐Ÿ”„ Server restarted due to idle timeout"
๐Ÿ‡ฐ๐Ÿ‡ท "๐Ÿ”„ ๋ฌด์ ‘์†์œผ๋กœ ์ธํ•œ ์„œ๋ฒ„ ์žฌ์‹œ์ž‘"
๐Ÿ‡ฏ๐Ÿ‡ต "๐Ÿ”„ ใ‚ขใ‚คใƒ‰ใƒซใ‚ฟใ‚คใƒ ใ‚ขใ‚ฆใƒˆใซใ‚ˆใ‚‹ใ‚ตใƒผใƒใƒผๅ†่ตทๅ‹•"

โ ๐Ÿ“ˆ Resource Requirements & Scaling

PlayersCPU CoresRAMStorageBandwidth
1-82 cores2GB10GB5 Mbps
9-164 cores4GB15GB10 Mbps
17-246 cores6GB20GB15 Mbps
25-328 cores8GB25GB20 Mbps
โ Cloud Provider Recommendations
โ ARM64 Cloud Options ๐Ÿ’š
  • AWS: Graviton3/4 instances (c7g, m7g series)
  • Oracle Cloud: Ampere A1 (4 cores, 24GB RAM - Always Free!)
  • Hetzner: CAX series ARM64 VPS
  • Scaleway: ARM64 instances

โ ๐Ÿค Community & Support

โ ๐Ÿ“œ License & Acknowledgments

MIT License - Free for personal and commercial use.

โ โญ Love this project? Give it a star! โญ

Tag summary

Content type

Image

Digest

sha256:174b01435โ€ฆ

Size

1.2 GB

Last updated

21 days ago

docker pull supersunho/palworld-server