2.4 KiB
2.4 KiB
Minecraft Server
Self-hosted Minecraft server running the TerraFirmaGreg: Modern modpack.
Access
- Host:
192.168.2.114:25565(LAN / Tailscale) - Voice Chat:
192.168.2.114:24454/udp
No Tailscale sidecar — ports are exposed directly on the host.
Containers
| Container | Image | Role |
|---|---|---|
minecraft |
itzg/minecraft-server:latest |
Game server |
Compose File
Path: /Minecraft_Server/docker-compose.yaml
Note: This file lives outside the main
DockerFilesdirectory. It is explicitly mounted into the Dockhand container so it can manage it.
services:
mc:
image: itzg/minecraft-server:latest
container_name: minecraft
mem_limit: 12g
tty: true
stdin_open: true
ports:
- 25565:25565
- 24454:24454/udp # Voice Chat
volumes:
- /Minecraft_Server/Minecraft_Server/data:/data
- /Minecraft_Server/Minecraft_Server/modpacks:/modpacks:ro
- /Minecraft_Server/Minecraft_Server/downloads:/downloads
environment:
EULA: TRUE
TYPE: AUTO_CURSEFORGE
VERSION: 1.20.1
CF_API_KEY: <redacted>
CF_PAGE_URL: "https://www.curseforge.com/minecraft/modpacks/terrafirmagreg-modern/files/7665541"
CF_BASE_DIR: /data
INIT_MEMORY: 8G
MAX_MEMORY: 12G
ENABLE_AUTOPAUSE: true
MAX_TICK_TIME: -1
AUTOPAUSE_TIMEOUT_INIT: 600 # 10 min before pausing on empty server (init)
AUTOPAUSE_TIMEOUT_EST: 1800 # 30 min before pausing (established)
ENABLE_ROLLING_LOGS: true
LOG_TIMESTAMP: true
MOTD: "Why does Pingle sound like Pringle. Does Sam own Pringles?"
restart: unless-stopped
Data Layout
| Path | Contents |
|---|---|
/Minecraft_Server/Minecraft_Server/data |
World saves, server config, plugins |
/Minecraft_Server/Minecraft_Server/modpacks |
Modpack files (read-only) |
/Minecraft_Server/Minecraft_Server/downloads |
CurseForge download cache |
Notes
- Uses
itzg/minecraft-serverwithAUTO_CURSEFORGEtype — it auto-downloads the modpack from CurseForge on startup if not already present - Modpack: TerraFirmaGreg: Modern (MC 1.20.1), pinned to a specific file ID (
7665541) - Memory: 8 GB initial, 12 GB max (hard limit via
mem_limit: 12g) - Auto-pause is enabled — server pauses after 30 minutes with no players, resumes on connection
MAX_TICK_TIME: -1disables the watchdog timer (prevents server shutdown if a tick takes too long, common with heavy modpacks)