Initial commit: racked.ru Minecraft server config snapshot
Captures live config state of nullstone Purpur 1.21.11 server:
- docker-compose.yml (itzg/minecraft-server image, MODRINTH_PROJECTS + PLUGINS lists)
- All plugin configs under live-server/plugins/ (no DBs, no jars, no world data)
- Server core: bukkit.yml, spigot.yml, purpur.yml, paper-global.yml, paper-world-defaults.yml, server.properties
Excluded via .gitignore:
- World data (world/, world_nether/, world_the_end/, auth_limbo/)
- Sensitive: AuthMe DB (password hashes), Lands DB, CoreProtect DB, Essentials userdata
- Jars (auto-fetched), logs, caches, .paper-remapped
2026-04-30 18:33:38 +01:00
|
|
|
services:
|
|
|
|
|
mc:
|
|
|
|
|
image: itzg/minecraft-server:latest
|
|
|
|
|
container_name: minecraft-mc
|
|
|
|
|
environment:
|
|
|
|
|
EULA: "TRUE"
|
|
|
|
|
# TYPE=CUSTOM bypasses itzg's auto-loader detection; honors MODRINTH_LOADER override
|
|
|
|
|
TYPE: CUSTOM
|
|
|
|
|
CUSTOM_SERVER: "https://api.purpurmc.org/v2/purpur/1.21.11/latest/download"
|
|
|
|
|
VERSION: "1.21.11"
|
|
|
|
|
|
2026-05-07 17:51:58 +01:00
|
|
|
# H3 (2026-05-07): Xmx lowered 16384M -> 14336M to leave ~3.5G headroom
|
|
|
|
|
# for off-heap (Netty buffers, native mmaps, plugin metadata) inside the
|
|
|
|
|
# 18G container limit. See AUDIT-2026-05-07.md F-05.
|
|
|
|
|
MEMORY_SIZE: "14G"
|
|
|
|
|
JVM_OPTS: "-Xms8192M -Xmx14336M"
|
Initial commit: racked.ru Minecraft server config snapshot
Captures live config state of nullstone Purpur 1.21.11 server:
- docker-compose.yml (itzg/minecraft-server image, MODRINTH_PROJECTS + PLUGINS lists)
- All plugin configs under live-server/plugins/ (no DBs, no jars, no world data)
- Server core: bukkit.yml, spigot.yml, purpur.yml, paper-global.yml, paper-world-defaults.yml, server.properties
Excluded via .gitignore:
- World data (world/, world_nether/, world_the_end/, auth_limbo/)
- Sensitive: AuthMe DB (password hashes), Lands DB, CoreProtect DB, Essentials userdata
- Jars (auto-fetched), logs, caches, .paper-remapped
2026-04-30 18:33:38 +01:00
|
|
|
|
|
|
|
|
DIFFICULTY: hard
|
|
|
|
|
GAMEMODE: survival
|
|
|
|
|
HARDCORE: "false"
|
|
|
|
|
MAX_PLAYERS: "69"
|
|
|
|
|
VIEW_DISTANCE: 20
|
|
|
|
|
SIMULATION_DISTANCE: 10
|
|
|
|
|
ONLINE_MODE: "false"
|
|
|
|
|
SPAWN_PROTECTION: 0
|
|
|
|
|
MOTD: "racked.ru — experience the game the way it should have always been"
|
|
|
|
|
|
|
|
|
|
USE_AIKAR_FLAGS: "true"
|
|
|
|
|
MAX_TICK_TIME: "-1"
|
|
|
|
|
|
|
|
|
|
ENABLE_RCON: "true"
|
2026-05-08 15:36:20 +01:00
|
|
|
RCON_PASSWORD: "${RCON_PASSWORD}"
|
Initial commit: racked.ru Minecraft server config snapshot
Captures live config state of nullstone Purpur 1.21.11 server:
- docker-compose.yml (itzg/minecraft-server image, MODRINTH_PROJECTS + PLUGINS lists)
- All plugin configs under live-server/plugins/ (no DBs, no jars, no world data)
- Server core: bukkit.yml, spigot.yml, purpur.yml, paper-global.yml, paper-world-defaults.yml, server.properties
Excluded via .gitignore:
- World data (world/, world_nether/, world_the_end/, auth_limbo/)
- Sensitive: AuthMe DB (password hashes), Lands DB, CoreProtect DB, Essentials userdata
- Jars (auto-fetched), logs, caches, .paper-remapped
2026-04-30 18:33:38 +01:00
|
|
|
|
|
|
|
|
TZ: "Europe/London"
|
|
|
|
|
ENABLE_ROLLING_LOGS: "true"
|
|
|
|
|
|
|
|
|
|
UID: "1000"
|
|
|
|
|
GID: "1000"
|
|
|
|
|
|
|
|
|
|
# Modrinth auto-DL — TYPE=CUSTOM lets MODRINTH_LOADER=paper actually work
|
|
|
|
|
MODRINTH_PROJECTS: |
|
|
|
|
|
luckperms
|
|
|
|
|
placeholderapi
|
|
|
|
|
fastasyncworldedit
|
|
|
|
|
simple-voice-chat
|
|
|
|
|
minimotd
|
|
|
|
|
skinsrestorer
|
|
|
|
|
vaultunlocked
|
|
|
|
|
proantitab
|
|
|
|
|
voidworldgenerator
|
|
|
|
|
homestead-plugin
|
|
|
|
|
# EssentialsX + spark not on Modrinth as paper jars — direct GH/CI URLs
|
|
|
|
|
PLUGINS: |
|
2026-05-01 11:44:19 +01:00
|
|
|
https://cdn.modrinth.com/data/LzguaypS/versions/4JSNvFdv/EZShop-1.0-SNAPSHOT.jar
|
|
|
|
|
https://cdn.modrinth.com/data/scEbl04C/versions/5igCjE4Q/AuctionHouse-1.4.6.jar
|
Initial commit: racked.ru Minecraft server config snapshot
Captures live config state of nullstone Purpur 1.21.11 server:
- docker-compose.yml (itzg/minecraft-server image, MODRINTH_PROJECTS + PLUGINS lists)
- All plugin configs under live-server/plugins/ (no DBs, no jars, no world data)
- Server core: bukkit.yml, spigot.yml, purpur.yml, paper-global.yml, paper-world-defaults.yml, server.properties
Excluded via .gitignore:
- World data (world/, world_nether/, world_the_end/, auth_limbo/)
- Sensitive: AuthMe DB (password hashes), Lands DB, CoreProtect DB, Essentials userdata
- Jars (auto-fetched), logs, caches, .paper-remapped
2026-04-30 18:33:38 +01:00
|
|
|
https://github.com/EssentialsX/Essentials/releases/download/2.21.2/EssentialsX-2.21.2.jar
|
|
|
|
|
https://ci.lucko.me/job/spark/lastSuccessfulBuild/artifact/spark-bukkit/build/libs/spark-1.10.172-bukkit.jar
|
|
|
|
|
https://github.com/HaHaWTH/AuthMeReReloaded/releases/download/b49/AuthMe-5.6.0-FORK-Universal.jar
|
|
|
|
|
https://github.com/dmulloy2/ProtocolLib/releases/download/dev-build/ProtocolLib.jar
|
|
|
|
|
https://github.com/VoidemLIVE/Help-Command-Plugin/releases/download/v2.9.2/HelpCommand-2.9.2.jar
|
|
|
|
|
https://cdn.modrinth.com/data/Lu3KuzdV/versions/HD2IvrxS/CoreProtect-CE-23.1.jar
|
|
|
|
|
https://cdn.modrinth.com/data/gG7VFbG0/versions/uWACk3HR/TAB%20v6.0.1.jar
|
|
|
|
|
MODRINTH_DOWNLOAD_DEPENDENCIES: none
|
|
|
|
|
MODRINTH_PROJECTS_DEFAULT_VERSION_TYPE: release
|
|
|
|
|
MODRINTH_LOADER: paper
|
|
|
|
|
SPIGET_RESOURCES: ""
|
|
|
|
|
REMOVE_OLD_MODS: "true"
|
|
|
|
|
REMOVE_OLD_MODS_INCLUDE: "*.jar"
|
2026-04-30 19:19:29 +01:00
|
|
|
REMOVE_OLD_MODS_EXCLUDE: "AuthLimbo*.jar"
|
Initial commit: racked.ru Minecraft server config snapshot
Captures live config state of nullstone Purpur 1.21.11 server:
- docker-compose.yml (itzg/minecraft-server image, MODRINTH_PROJECTS + PLUGINS lists)
- All plugin configs under live-server/plugins/ (no DBs, no jars, no world data)
- Server core: bukkit.yml, spigot.yml, purpur.yml, paper-global.yml, paper-world-defaults.yml, server.properties
Excluded via .gitignore:
- World data (world/, world_nether/, world_the_end/, auth_limbo/)
- Sensitive: AuthMe DB (password hashes), Lands DB, CoreProtect DB, Essentials userdata
- Jars (auto-fetched), logs, caches, .paper-remapped
2026-04-30 18:33:38 +01:00
|
|
|
volumes:
|
|
|
|
|
- /opt/docker/minecraft:/data
|
|
|
|
|
ports:
|
|
|
|
|
- "25565:25565/tcp"
|
|
|
|
|
- "25575:25575/tcp"
|
|
|
|
|
networks:
|
|
|
|
|
- proxy
|
|
|
|
|
restart: unless-stopped
|
2026-05-07 17:51:58 +01:00
|
|
|
# H2 (2026-05-07): Container hardening per AUDIT-2026-05-07.md F-06.
|
|
|
|
|
# Drop the default Docker capability set (CAP_NET_RAW, CAP_SYS_CHROOT, ...)
|
|
|
|
|
# which the JVM/Paper does not need. Re-add only the minimum needed by
|
|
|
|
|
# itzg's entrypoint chown/gosu flow. DAC_OVERRIDE intentionally omitted —
|
|
|
|
|
# add back only if entrypoint fails. NOT applied live until next restart.
|
|
|
|
|
cap_drop:
|
|
|
|
|
- ALL
|
|
|
|
|
cap_add:
|
|
|
|
|
- CHOWN
|
|
|
|
|
- SETUID
|
|
|
|
|
- SETGID
|
|
|
|
|
- FOWNER
|
|
|
|
|
security_opt:
|
|
|
|
|
- no-new-privileges:true
|
Initial commit: racked.ru Minecraft server config snapshot
Captures live config state of nullstone Purpur 1.21.11 server:
- docker-compose.yml (itzg/minecraft-server image, MODRINTH_PROJECTS + PLUGINS lists)
- All plugin configs under live-server/plugins/ (no DBs, no jars, no world data)
- Server core: bukkit.yml, spigot.yml, purpur.yml, paper-global.yml, paper-world-defaults.yml, server.properties
Excluded via .gitignore:
- World data (world/, world_nether/, world_the_end/, auth_limbo/)
- Sensitive: AuthMe DB (password hashes), Lands DB, CoreProtect DB, Essentials userdata
- Jars (auto-fetched), logs, caches, .paper-remapped
2026-04-30 18:33:38 +01:00
|
|
|
healthcheck:
|
|
|
|
|
test: ["CMD", "mc-health"]
|
|
|
|
|
interval: 30s
|
|
|
|
|
timeout: 10s
|
|
|
|
|
retries: 3
|
|
|
|
|
start_period: 240s
|
|
|
|
|
deploy:
|
|
|
|
|
resources:
|
|
|
|
|
limits:
|
|
|
|
|
memory: 18G
|
|
|
|
|
cpus: '6'
|
2026-05-07 17:51:58 +01:00
|
|
|
pids: 4096
|
Initial commit: racked.ru Minecraft server config snapshot
Captures live config state of nullstone Purpur 1.21.11 server:
- docker-compose.yml (itzg/minecraft-server image, MODRINTH_PROJECTS + PLUGINS lists)
- All plugin configs under live-server/plugins/ (no DBs, no jars, no world data)
- Server core: bukkit.yml, spigot.yml, purpur.yml, paper-global.yml, paper-world-defaults.yml, server.properties
Excluded via .gitignore:
- World data (world/, world_nether/, world_the_end/, auth_limbo/)
- Sensitive: AuthMe DB (password hashes), Lands DB, CoreProtect DB, Essentials userdata
- Jars (auto-fetched), logs, caches, .paper-remapped
2026-04-30 18:33:38 +01:00
|
|
|
reservations:
|
|
|
|
|
memory: 8G
|
|
|
|
|
labels:
|
|
|
|
|
- "traefik.enable=false"
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
proxy:
|
|
|
|
|
external: true
|