"vault backup: 2026-03-08 13:31:23 from Flow"
This commit is contained in:
69
21-Server Reference/stacks/minecraft.md
Normal file
69
21-Server Reference/stacks/minecraft.md
Normal file
@@ -0,0 +1,69 @@
|
||||
# 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 `DockerFiles` directory. It is explicitly mounted into the Dockhand container so it can manage it.
|
||||
|
||||
```yaml
|
||||
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-server` with `AUTO_CURSEFORGE` type — 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: -1` disables the watchdog timer (prevents server shutdown if a tick takes too long, common with heavy modpacks)
|
||||
Reference in New Issue
Block a user