Sådan installerer du Docker på Ubuntu
På denne side
Docker kører programmer i containere: hver container har alt, hvad den skal bruge, så den kører på samme måde på din bærbare og på en server. Hjemmesider, databaser, bots og spilservere kan alle startes med én kommando eller én Compose-fil.
Denne guide installerer Docker Engine og Docker Compose på Ubuntu 24.04 eller 22.04 fra Dockers officielle repository og gennemgår derefter de indstillinger, der betyder noget på en rigtig server: rettigheder, logs og firewall.
Før du går i gang
- En understøttet Ubuntu: Docker understøtter 64-bit-versionerne af Ubuntu 26.04, 24.04 og 22.04 LTS. Tjek din med
cat /etc/os-release. - En KVM-server, ikke en container: Docker har brug for sine egne kernefunktioner. Det kører på enhver KVM-VPS, men ofte ikke på containerbaserede pakker (OpenVZ eller LXC).
- Root eller en bruger med sudo. Kommandoerne nedenfor bruger
sudo; er du logget ind som root, kan du udelade det.
Undgå pakken docker.io fra Ubuntus eget repository og Snap-versionen på servere: Dockers repository får nye versioner først, og det er det, Dockers egen dokumentation bruger.
Docker kræver en rigtig virtuel maskine: HytHost KVM VPS-pakker med Ubuntu og fuld root starter fra €2.92/md.
Se VPS-pakkerTrin 1: Fjern pakker, der giver konflikter
Har du tidligere installeret Docker fra en anden kilde, så fjern de pakker først. På en ny server melder apt blot, at ingen af dem er installeret:
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc docker-buildx podman-docker containerd runc | cut -f1)
Images og volumes i /var/lib/docker/ bliver ikke slettet af dette.
Trin 2: Tilføj Dockers repository
Disse kommandoer fra Dockers dokumentation tilføjer Dockers signeringsnøgle og dets apt-repository til din Ubuntu-version:
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
Trin 3: Installer Docker og Compose
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Det installerer Docker Engine, kommandolinjeværktøjet, Buildx-builderen og Compose-pluginet. Tjek, at det virker:
sudo docker run hello-world docker compose version
Den første kommando henter et lille test-image og viser en velkomstbesked. På Ubuntu starter Docker automatisk ved opstart, så der er intet at aktivere.
Compose er kommandoen docker compose, med mellemrum. Den gamle docker-compose med bindestreg er den udfasede første version; guides, der stadig bruger den, virker også med den nye kommando.
Trin 4: Rettigheder og logrotation
Kør docker uden sudo. Føj din bruger til gruppen docker, og log derefter ud og ind igen:
sudo usermod -aG docker $USER
Vær opmærksom på, at Docker selv advarer om, at denne gruppe giver rettigheder på root-niveau: alle i den kan styre hele serveren. Tilføj kun brugere, du ville give root.
Begræns logstørrelsen. Som standard vokser containerlogs uden grænse og kan fylde disken. Opret /etc/docker/daemon.json:
{
"log-driver": "json-file",
"log-opts": { "max-size": "10m", "max-file": "3" }
}
Kør derefter sudo systemctl restart docker. Grænsen gælder for containere, der oprettes efter ændringen, så genopret de eksisterende.
Din første Compose-fil
Compose beskriver dine containere i én fil. Opret en mappe med en compose.yaml:
services:
web:
image: nginx:stable
ports:
- "127.0.0.1:8080:80"
restart: unless-stopped
Start den med docker compose up -d, tjek den med docker compose ps, og læs dens logs med docker compose logs. restart: unless-stopped starter containeren igen efter et nedbrud eller en genstart. Porten er bundet til 127.0.0.1 med vilje, som næste afsnit forklarer.
Docker og ufw: firewallfælden
Den her fanger næsten alle. Når du publicerer en port, for eksempel -p 8080:80, tilføjer Docker sine egne firewallregler, som anvendes før ufws. Porten er åben mod internettet, selv om ufw siger, at den er lukket.
- Bind porte til localhost, når kun serveren selv har brug for dem, fx en database eller en app bag en reverse proxy:
127.0.0.1:8080:80. - Publicer slet ikke databaseporte; lad i stedet containerne nå hinanden over et Docker-netværk.
- Til filtrering efter kildeadresse kan du tilføje regler til iptables-kæden
DOCKER-USER, som Docker tjekker før sine egne.
Det samme gælder spilservere, der kører i Docker; se sådan sætter du en VPS op til spilservere.
Docker på en HytHost VPS
HytHost VPS-pakker kører på KVM, så hver VPS har sin egen kerne, og Docker kører uden begrænsninger. Vælg Ubuntu 24.04 eller 22.04 ved bestilling, forbind via SSH, og følg trinene ovenfor. Du får fuld root-adgang, SSD-lagerplads og DDoS-beskyttelse, og du kan senere opgradere til en større pakke, efterhånden som dine containere vokser.
Ofte stillede spørgsmål
Docker understøtter 64-bit-versionerne af Ubuntu 26.04, 24.04 og 22.04 LTS. Andre Ubuntu-baserede systemer, såsom Linux Mint, er ikke officielt understøttet.
Ikke på en produktionsserver. Docker siger, at deres bekvemmelighedsscript er til udviklingsmiljøer og ikke anbefales til produktion; det kan også springe til en ny hovedversion. Brug i stedet repository-metoden.
docker-compose med bindestreg er den gamle, udfasede version. I dag er Compose et Docker-plugin, der bruges som docker compose og installeres med pakken docker-compose-plugin.
Porte, som Docker publicerer, omgår ufw. Bind porten til 127.0.0.1, hvis den skal forblive lokal, eller filtrer den i kæden DOCKER-USER.
På en KVM VPS, ja. Containerbaserede VPS-pakker, såsom OpenVZ, kan ofte ikke køre Docker eller kræver særlige indstillinger fra udbyderen.
Kør dine containere på en VPS
HytHost KVM VPS-pakker kører Docker uden begrænsninger, med fuld root-adgang og Ubuntu 24.04, fra €2.92/md.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursVar denne guide en hjælp?