Jak zainstalowac Docker na VPS i uruchomic serwer gry w kontenerze

Docker to narzedzie do konteneryzacji, ktore pozwala uruchamiac aplikacje w izolowanych srodowiskach. Kazdy kontener zawiera wszystko, czego aplikacja potrzebuje: system plikow, biblioteki, zaleznosci i konfiguracje. Na VPS KVM Docker dziala bez ograniczen, dzieki czemu mozesz szybko wdrazac serwery gier, bazy danych, strony internetowe i inne uslugi bez ingerencji w glowny system.

Wymagania wstepne

Docker wymaga VPS z wirtualizacja KVM. Na OpenVZ instalacja jest utrudniona lub niemozliwa ze wzgledu na wspoldzielone jadro. Potrzebujesz takze:

  • Systemu Debian 12, Ubuntu 22.04 lub nowszego
  • Dostepu root przez SSH
  • Minimum 2 GB RAM (wiecej w zaleznosci od planowanych kontenerow)

Instalacja Dockera krok po kroku

Polacz sie z VPS przez SSH i wykonaj nastepujace polecenia:

  1. Zaktualizuj liste pakietow i zainstaluj wymagane zaleznosci:

    apt update && apt install -y ca-certificates curl gnupg

  2. Dodaj oficjalne repozytorium Dockera:

    install -m 0755 -d /etc/apt/keyrings

    curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg

    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list

    Na Ubuntu zamien debian na ubuntu w powyzszych poleceniach.

  3. Zainstaluj Dockera:

    apt update && apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

  4. Sprawdz, czy Docker dziala:

    docker run hello-world

    Jesli zobaczysz komunikat powitalny, instalacja przebiegla pomyslnie.

Podstawowe komendy Dockera

Oto najczesciej uzywane polecenia, ktore warto znac:

  • docker ps lista uruchomionych kontenerow
  • docker ps -a lista wszystkich kontenerow, takze zatrzymanych
  • docker images lista pobranych obrazow
  • docker pull nazwa-obrazu pobranie obrazu z Docker Hub
  • docker stop nazwa-kontenera zatrzymanie kontenera
  • docker rm nazwa-kontenera usuniecie kontenera
  • docker logs nazwa-kontenera wyswietlenie logow kontenera
  • docker exec -it nazwa-kontenera bash wejscie do terminala kontenera

Uruchamianie serwera Minecraft w Dockerze

Spolecznosc Dockera udostepnia gotowe obrazy serwerow gier. Jednym z najpopularniejszych jest itzg/minecraft-server, ktory obsluguje Vanilla, Paper, Spigot, Forge i Fabric. Uruchomisz go jednym poleceniem:

docker run -d --name mc-server -p 25565:25565 -e EULA=TRUE -e TYPE=PAPER -e VERSION=26.2 -v mc-data:/data itzg/minecraft-server

Co robi kazdy parametr:

  • -d uruchamia kontener w tle
  • --name mc-server nadaje kontenerowi nazwe
  • -p 25565:25565 mapuje port serwera na port hosta
  • -e EULA=TRUE akceptuje warunki licencji Minecraft
  • -e TYPE=PAPER wybiera oprogramowanie Paper
  • -e VERSION=26.2 ustawia wersje Minecraft
  • -v mc-data:/data przechowuje dane serwera w wolumenie, dzieki czemu przetrwaja restart kontenera

Docker Compose: wiele uslug w jednym pliku

Docker Compose pozwala definiowac wiele kontenerow w jednym pliku YAML. Jest to szczegolnie przydatne, gdy serwer gry wymaga bazy danych lub innych uslug pomocniczych. Utworz plik docker-compose.yml:

services:
minecraft:
image: itzg/minecraft-server
ports:
- "25565:25565"
environment:
EULA: "TRUE"
TYPE: PAPER
VERSION: "26.2"
MEMORY: 4G
volumes:
- mc-data:/data
restart: unless-stopped

volumes:
mc-data:

Uruchom wszystko jednym poleceniem:

docker compose up -d

Zatrzymanie: docker compose down. Dane w wolumenach pozostaja nienaruszone.

Praktyczne wskazowki

  • Wolumeny zamiast bindow: uzywaj wolumenow Docker (-v nazwa:/sciezka) do przechowywania danych. Sa szybsze i latwiejsze w zarzadzaniu niz montowanie folderow hosta.
  • Restart automatyczny: dodaj restart: unless-stopped w docker-compose lub --restart unless-stopped przy docker run, aby kontener uruchamial sie automatycznie po restarcie VPS.
  • Firewall: Docker domyslnie otwiera porty w iptables z pominieciem ufw. Jesli uzywasz ufw, skonfiguruj reguly Docker w /etc/docker/daemon.json z opcja "iptables": false lub zarzadzaj portami recznie.
  • Aktualizacja obrazow: regularnie aktualizuj obrazy poleceniem docker compose pull, a nastepnie docker compose up -d, aby zastosowac nowe wersje.

Dlaczego Docker na KVM VPS?

KVM zapewnia pelna izolacje jadra, dzieki czemu Docker dziala tak samo jak na serwerze dedykowanym. Mozesz swobodnie ladowac moduly jadra, korzystac z overlay2 jako sterownika storage i uruchamiac dowolna liczbe kontenerow w ramach dostepnych zasobow. W polaczeniu z dyskami NVMe otrzymujesz szybki dostep do danych, co jest kluczowe przy bazach danych i serwerach gier.

Szukasz VPS pod Dockera? Sprawdz oferte na stronie VPS hosting. Wszystkie pakiety VPS w HostValues opieraja sie na KVM z dyskami NVMe i pelnym dostepem root.

Czy Docker dziala na OpenVZ?

Nie w pelni. OpenVZ wspoldziela jadro z hostem, co uniemozliwia korzystanie z wielu funkcji Dockera. KVM nie ma tego ograniczenia, poniewaz kazdy VPS posiada wlasne jadro.

Ile RAM potrzebuje Docker?

Sam Docker zuzywa minimalna ilosc pamieci. Zapotrzebowanie zalezy od kontenerow: serwer Minecraft z Paper potrzebuje 2 do 4 GB RAM w kontenerze, lekka aplikacja webowa wystarcza z 256 do 512 MB. Planuj zasoby VPS na podstawie sumy zapotrzebowan wszystkich kontenerow plus okolo 512 MB na system operacyjny.

Jak zrobic kopie zapasowa danych Dockera?

Dane przechowywane w wolumenach znajdziesz w /var/lib/docker/volumes/. Mozesz je archiwizowac narzedziem tar lub skryptem cron. Przed kopia zatrzymaj kontener poleceniem docker stop, aby uniknac niespojnosci danych.


Nadal masz problem? Otwórz zgłoszenie do supportu, nasz zespół chętnie pomoże.

Powrót do bazy wiedzy