Docker uruchamia każdy serwer gier w izolowanym kontenerze. VPS może hostować serwer Minecraft, serwer Palworld i bota Discord bez wzajemnego wpływu. Każdy kontener ma własne pliki, porty i limity zasobów.
Dlaczego Docker do serwerów gier?
- Izolacja: awaria jednego kontenera nie wpływa na inne.
- Łatwa konfiguracja: gotowe obrazy dla większości gier. Serwer Minecraft to jedno polecenie.
- Powtarzalność: usuń kontener, utwórz go ponownie i masz czysty stan. Dane pozostają zachowane w woluminach.
- Limity zasobów: ustaw limity CPU i pamięci na kontener, aby jeden serwer nie zagłodził pozostałych.
Instalacja Dockera
curl -fsSL https://get.docker.com | sh sudo usermod -aG docker $USER
Wyloguj się i zaloguj ponownie, aby zmiana grupy została aktywowana.
Minecraft z Dockerem
Obraz itzg/minecraft-server to złoty standard:
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
To uruchamia serwer Paper z 4 GB RAM, portem 25565 i trwałymi danymi w woluminie mc-data. Dodaj pluginy, umieszczając je w folderze plugins/ woluminu.
Docker Compose dla wielu serwerów
Użyj docker-compose.yml do zarządzania wieloma serwerami:
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:
Uruchom oba poleceniem docker compose up -d.
Przydatne polecenia
docker logs mc --tail 100: ostatnie 100 linii logu serwera Minecraft.docker exec -i mc rcon-cli: dostęp do konsoli serwera.docker stop mc && docker start mc: restart kontenera.docker stats: zużycie zasobów wszystkich kontenerów na żywo.
Czy Docker jest wolniejszy niż bezpośrednie uruchomienie?
Nie. Docker korzysta z jądra hosta; nie ma narzutu wirtualizacji. Wydajność jest identyczna z instalacją bezpośrednią.
Jak zaktualizować serwer gier?
Pobierz najnowszy obraz: docker pull itzg/minecraft-server. Następnie utwórz kontener ponownie: docker compose up -d. Dane w woluminie pozostają zachowane.
Czy mogę używać panelu Pterodactyl z Dockerem?
Tak. Pterodactyl (i jego następca Pelican) wewnętrznie używają kontenerów Docker. Panel zarządza kontenerami przez interfejs webowy zamiast wiersza poleceń.
Uruchom Dockera na KVM VPS w HostValues. Wszystkie pakiety zawierają pełny dostęp root.