Docker draait elke gameserver in een geisoleerde container. Een VPS kan een Minecraft-server, een Palworld-server en een Discord-bot hosten zonder dat ze elkaar beinvloeden. Elke container heeft zijn eigen bestanden, poorten en resource-limieten.
Waarom Docker voor gameservers?
- Isolatie: een crash in de ene container raakt de andere niet.
- Eenvoudige setup: kant-en-klare images voor de meeste games. Een Minecraft-server is een enkel commando.
- Reproduceerbaar: verwijder de container, maak hem opnieuw aan, en je hebt weer een schone staat. Je data blijft bewaard in volumes.
- Resource-limieten: stel CPU- en geheugenlimieten per container in zodat een server de andere niet uithongert.
Docker installeren
curl -fsSL https://get.docker.com | sh sudo usermod -aG docker $USER
Log uit en weer in zodat de groepswijziging actief wordt.
Minecraft met Docker
De itzg/minecraft-server image is de gouden standaard:
docker run -d --name mc \ -p 25565:25565 \ -e EULA=TRUE \ -e TYPE=PAPER \ -e MEMORY=4G \ -e VERSION=LATEST \ -v mc-data:/data \ --restart unless-stopped \ itzg/minecraft-server
Dit start een Paper-server met 4 GB RAM, poort 25565 en persistente data in het mc-data-volume. Voeg plugins toe door ze in de plugins/-map van het volume te plaatsen.
Docker Compose voor meerdere servers
Gebruik docker-compose.yml om meerdere servers te beheren:
services:
minecraft:
image: itzg/minecraft-server
ports:
- "25565:25565"
environment:
EULA: "TRUE"
TYPE: PAPER
MEMORY: "4G"
volumes:
- mc-data:/data
restart: unless-stopped
deploy:
resources:
limits:
memory: 5G
palworld:
image: thijsvanloef/palworld-server-docker
ports:
- "8211:8211/udp"
volumes:
- pw-data:/palworld
restart: unless-stopped
deploy:
resources:
limits:
memory: 16G
volumes:
mc-data:
pw-data:
Start beide met docker compose up -d.
Handige commando's
docker logs mc --tail 100: laatste 100 regels van het Minecraft-serverlog.docker exec -i mc rcon-cli: toegang tot de serverconsole.docker stop mc && docker start mc: herstart een container.docker stats: live resource-gebruik van alle containers.
Is Docker trager dan direct draaien?
Nee. Docker gebruikt de host-kernel; er is geen virtualisatie-overhead. De prestaties zijn identiek aan een directe installatie.
Hoe update ik de gameserver?
Pull de laatste image: docker pull itzg/minecraft-server. Maak vervolgens de container opnieuw aan: docker compose up -d. Je data in het volume blijft bewaard.
Kan ik het Pterodactyl-panel met Docker gebruiken?
Ja. Pterodactyl (en zijn opvolger Pelican) gebruiken intern Docker-containers. Het panel beheert containers via een webinterface in plaats van de opdrachtregel.
Draai Docker op een KVM VPS bij HostValues. Alle pakketten bevatten volledige root-toegang.