Jak skonfigurować serwer Palworld w Docker, nie tracąc przy tym zmysłów
Pamiętasz ten szalony hype na Palworld na początku roku? Gra wciąż ma niezłą bazę graczy, a wraz z kolejnymi dużymi aktualizacjami, pojawia się chęć zebrania znajomych na własnym serwerze. Ale każdy, kto próbował uruchomić oficjalny serwer na Linuksie, wie: to spory ból głowy z zależnościami SteamCMD, uprawnieniami i ciągłymi wyciekami pamięci.
Projekt palworld-server-docker autorstwa Thijsa van Loefa to idealny przykład sytuacji, gdy społeczność bierze surowe narzędzie i zamienia je w coś naprawdę użytecznego. Autor spakował wszystko, czego potrzebujesz, w jeden kontener, dodał automatyzację, a najlepsze jest to, że projekt obsługuje ARM64.
Dlaczego to wygodniejsze niż ręczna instalacja
Zazwyczaj konfiguracja serwera gry zamienia się w niekończące się edytowanie plików konfiguracyjnych i walkę z portami. Tutaj wszystkim zarządza się za pomocą zmiennych środowiskowych. Chcesz zmienić poziom trudności lub włączyć PvP? Wystarczy edytować jedną linię w compose.yaml i zrestartować kontener.
Przy okazji, projekt obsługuje nie tylko klasyczne x86, ale także Raspberry Pi 4/5 oraz Maca z chipami M1/M2/M3. Dla właścicieli domowych serwerów na ARM to prawdziwe wybawienie, ponieważ uruchamianie aplikacji x86 tam zazwyczaj wymaga sporej gimnastyki z Box64. Tutaj wszystko działa out of the box.
Co potrafi ten kontener
Autor nie zrobił po prostu „nakładki" na serwer — dodał funkcje, których desperacko brakuje w oficjalnej kompilacji.
Automatyczne kopie zapasowe i aktualizacje
Serwer Palworld w obecnym stanie (wczesny dostęp) lubi się crashować lub uszkadzać zapisy. Kontener ma wbudowaną obsługę Cron. Domyślnie wykonuje kopie zapasowe o północy, ale łatwo to zmienić. Jest też automatyczne usuwanie starych archiwów, więc dysk nie zapełni się po tygodniu.
Inteligentna pauza (Auto-Pause)
To prawdopodobnie najfajniejsza funkcja dla osób dbających o zasoby. Kontener może „uśpić" proces serwera, gdy nie ma na nim żadnych graczy. Gdy tylko ktoś spróbuje się połączyć, serwer się budzi. To oszczędza mnóstwo RAM i cykli CPU, co jest kluczowe, jeśli wynajmujesz słaby VPS.
Integracja z Discord
Możesz podłączyć webhooki, a serwer będzie raportować na Twój kanał o każdym zdarzeniu: kto dołączył, kto wyszedł, kiedy rozpoczęła się aktualizacja lub kiedy utworzono kopię zapasową. To drobiazg, ale wygodnie monitorować życie swojego świata bez logowania się do gry.
Wymagania sprzętowe
Palworld jest dość głodny. Jeśli planujesz grać w grupie 4-8 osób, celuj w te liczby:
- CPU: minimum 4 rdzenie.
- RAM: 16 GB to konieczne minimum. Deweloper zaleca 32 GB dla stabilnej pracy, ponieważ gra ma problemy z wyciekami pamięci podczas długich sesji.
- Dysk: około 8-20 GB.
Szybki start z Docker Compose
Najłatwiejszy sposób na rozpoczęcie to użycie Docker Compose. Stwórz plik compose.yaml i dodaj podstawową konfigurację:
services:
palworld:
image: thijsvanloef/palworld-server-docker:latest
restart: unless-stopped
container_name: palworld-server
stop_grace_period: 30s
ports:
- 8211:8211/udp
- 27015:27015/udp
environment:
- PUID=1000
- PGID=1000
- PORT=8211
- PLAYERS=16
- MULTITHREADING=true
- SERVER_NAME=My-Awesome-Pal-Server
- ADMIN_PASSWORD=SuperSecretAdminPass
- SERVER_PASSWORD=LetMeIn123
- COMMUNITY=false
volumes:
- ./palworld:/palworld/
Po tym wystarczy tylko uruchomić docker compose up -d. Kontener pobierze SteamCMD, pobierze najnowsze pliki serwera i uruchomi świat.
Zarządzanie przez RCON i REST API
Jeśli musisz wyrzucić jakiegoś awanturnika lub wysłać wiadomość do wszystkich graczy („Serwer zrestartuje się za 5 minut"), nie musisz wchodzić do kontenera. Obraz ma wbudowane narzędzia rcon-cli i rest-cli.
Przykładowe polecenie do rozesłania wiadomości:
docker exec -it palworld-server rcon-cli "Broadcast Внимание! Технические работы"
Dla tych, którzy chcą napisać własnego bota do zarządzania serwerem, dostępne jest pełne REST API. Jest domyślnie włączone na porcie 8212.
Czy warto spróbować
Jeśli planujesz grać w Palworld dłużej niż jeden wieczór, to repozytorium to must-have. Eliminuje rutynę tworzenia kopii zapasowych i pozwala elastycznie konfigurować balans gry (szybkość inkubacji jaj, obrażenia Palów, szybkość cyklu dnia i nocy) za pomocą prostych zmiennych środowiskowych.
Jedynym zastrzeżeniem jest apetyt gry na RAM. Nawet w Dockerze serwer może „zjeść" wszystkie dostępne zasoby, więc ustawienie zaplanowanych automatycznych restartów (co tutaj również jest dostępne) okaże się bardzo przydatne.
Projekt jest aktywnie rozwijany, commity pojawiają się często, a społeczność na Discordzie szybko pomaga z błędami. Dla hostingu domowego lub małego serwera dla znajomych, to obecnie najlepsze rozwiązanie.
Powiązane projekty