Kako instalirati Docker na Ubuntu
Na ovoj stranici
Docker pokreće aplikacije u kontejnerima: svaki sadrži sve što mu treba, pa radi jednako na vašem laptopu i na serveru. Web stranice, baze podataka, botove i game servere možete pokrenuti jednom naredbom ili jednom Compose datotekom.
Ovaj vodič instalira Docker Engine i Docker Compose na Ubuntu 24.04 ili 22.04 iz Dockerova službenog repozitorija, a zatim objašnjava postavke koje su bitne na pravom serveru: dozvole, logove i vatrozid.
Prije nego što počnete
- Podržani Ubuntu: Docker podržava 64-bitne verzije Ubuntu 26.04, 24.04 i 22.04 LTS. Svoju verziju provjerite naredbom
cat /etc/os-release. - KVM server, ne kontejner: Docker treba vlastite značajke kernela. Radi na svakom KVM VPS-u, ali često ne na paketima temeljenima na kontejnerima (OpenVZ ili LXC).
- Root ili korisnik sa sudo pravima. Naredbe ispod koriste
sudo; ako ste prijavljeni kao root, možete ga izostaviti.
Na serverima izbjegavajte paket docker.io iz Ubuntuova repozitorija i Snap verziju: Dockerov repozitorij prvi dobiva nove verzije i njega koristi i Dockerova službena dokumentacija.
Docker treba pravi virtualni stroj: HytHost KVM VPS paketi s Ubuntuom i punim root pristupom kreću od €2.92/mj.
Pogledajte VPS paketeKorak 1: Uklonite konfliktne pakete
Ako ste prije instalirali Docker iz drugog izvora, najprije uklonite te pakete. Na novom serveru apt jednostavno javi da nijedan nije instaliran:
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc docker-buildx podman-docker containerd runc | cut -f1)
Slike i volumeni u /var/lib/docker/ time se ne brišu.
Korak 2: Dodajte Dockerov repozitorij
Ove naredbe iz Dockerove dokumentacije dodaju Dockerov ključ za potpisivanje i njegov apt repozitorij za vašu verziju Ubuntua:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
Korak 3: Instalirajte Docker i Compose
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Time se instaliraju Docker Engine, alat naredbenog retka, Buildx builder i Compose dodatak. Provjerite radi li:
sudo docker run hello-world docker compose version
Prva naredba preuzima malu testnu sliku i ispisuje poruku dobrodošlice. Na Ubuntuu se Docker automatski pokreće pri podizanju sustava, pa ne trebate ništa uključivati.
Compose je naredba docker compose, s razmakom. Stari docker-compose s crticom je umirovljena prva verzija; vodiči koji ga još koriste rade i s novom naredbom.
Korak 4: Dozvole i rotacija logova
Pokretanje dockera bez sudo. Dodajte svog korisnika u grupu docker, zatim se odjavite i ponovno prijavite:
sudo usermod -aG docker $USER
Imajte na umu da sam Docker upozorava kako ova grupa daje ovlasti na razini roota: svatko u njoj može upravljati cijelim serverom. Dodajte samo korisnike kojima biste dali root.
Ograničite veličinu logova. Prema zadanim postavkama logovi kontejnera rastu bez ograničenja i mogu napuniti disk. Napravite /etc/docker/daemon.json:
{
"log-driver": "json-file",
"log-opts": { "max-size": "10m", "max-file": "3" }
}
Zatim pokrenite sudo systemctl restart docker. Ograničenje vrijedi za kontejnere stvorene nakon promjene, pa postojeće ponovno stvorite.
Prva Compose datoteka
Compose opisuje vaše kontejnere u jednoj datoteci. Napravite mapu s datotekom compose.yaml:
services:
web:
image: nginx:stable
ports:
- "127.0.0.1:8080:80"
restart: unless-stopped
Pokrenite je s docker compose up -d, provjerite s docker compose ps i čitajte logove s docker compose logs. restart: unless-stopped vraća kontejner nakon rušenja ili ponovnog pokretanja. Port je namjerno vezan na 127.0.0.1, kako objašnjava sljedeći odjeljak.
Docker i ufw: zamka vatrozida
U ovo upadne gotovo svatko. Kada objavite port, na primjer -p 8080:80, Docker dodaje vlastita pravila vatrozida koja se primjenjuju prije ufw pravila. Port je otvoren prema internetu čak i ako ufw kaže da je zatvoren.
- Vežite portove na localhost kada ih treba samo sam server, primjerice za bazu podataka ili aplikaciju iza reverse proxyja:
127.0.0.1:8080:80. - Portove baza podataka uopće ne objavljujte; neka kontejneri međusobno komuniciraju preko Docker mreže.
- Za filtriranje po izvornoj adresi dodajte pravila u iptables lanac
DOCKER-USER, koji Docker provjerava prije svojih.
Isto vrijedi i za game servere pokrenute u Dockeru; pogledajte kako postaviti VPS za game servere.
Docker na HytHost VPS-u
HytHost VPS paketi rade na KVM-u, pa svaki VPS ima vlastiti kernel i Docker radi bez ograničenja. Pri narudžbi odaberite Ubuntu 24.04 ili 22.04, spojite se preko SSH-a i slijedite gornje korake. Dobivate puni root pristup, SSD pohranu i DDoS zaštitu, a kasnije možete prijeći na veći paket kako vaši kontejneri rastu.
Česta pitanja
Docker podržava 64-bitne verzije Ubuntu 26.04, 24.04 i 22.04 LTS. Drugi sustavi temeljeni na Ubuntuu, poput Linux Minta, nisu službeno podržani.
Ne na produkcijskom serveru. Docker navodi da je ta praktična skripta namijenjena razvojnim okruženjima i da se ne preporučuje za produkciju; također može preskočiti na novu glavnu verziju. Umjesto nje koristite metodu s repozitorijem.
docker-compose s crticom je stara, umirovljena verzija. Danas je Compose Docker dodatak koji se koristi kao docker compose i instalira paketom docker-compose-plugin.
Portovi koje Docker objavi zaobilaze ufw. Vežite port na 127.0.0.1 ako treba ostati lokalan ili ga filtrirajte u lancu DOCKER-USER.
Na KVM VPS-u da. VPS paketi temeljeni na kontejnerima, poput OpenVZ-a, često ne mogu pokretati Docker ili trebaju posebne postavke od pružatelja.
Pokrenite svoje kontejnere na VPS-u
HytHost KVM VPS paketi pokreću Docker bez ograničenja, s punim root pristupom i Ubuntuom 24.04, od €2.92/mj.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursJe li ti ovaj vodič pomogao?