🐳 Guide: Installere Docker på Ubuntu 22.04

Hva lærer du?

  1. Installere Docker Engine
  2. Installere Docker Compose
  3. Konfigurere brukeren din til å kjøre Docker uten sudo (Viktig!)

Steg 1: Klargjør systemet

Fjern eventuelle gamle versjoner som kan skape konflikt:

sudo apt-get remove docker docker-engine docker.io containerd runc

Oppdater deretter pakkelisten og installer nødvendige verktøy:

sudo apt-get update
sudo apt-get install ca-certificates curl gnupg

Steg 2: Legg til Docker's offisielle GPG-nøkkel

Dette sikrer at du laster ned ekte programvare fra Docker, ikke en modifisert versjon.

sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

Legg til repositoryet:

echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Steg 3: Installer Docker Engine

Nå kan vi installere selve Docker:

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Hovedsteg: Kjøre Docker uten Sudo (Anbefalt)

Som standard må du skrive sudo før hver docker-kommando. Det er slitsomt. Slik fikser du det:

  1. Lag en docker-gruppe (hvis den ikke finnes):

    sudo groupadd docker
    
  2. Legg din bruker til i gruppen:

    sudo usermod -aG docker $USER
    
  3. Viktig: Logg ut og inn igjen, eller kjør denne kommandoen for at endringene skal tre i kraft umiddelbart:

    newgrp docker
    

Test installasjonen

Nå kan du teste om alt fungerer ved å laste ned og kjøre "Hello World":

docker run hello-world

Hvis du ser en velkomstmelding, er alt i orden! 🎉


Steg 4: Hvordan bruke Docker Compose?

I nye versjoner av Docker er Compose inkludert som en plugin.

I stedet for docker-compose (med bindestrek), bruker du nå:

docker compose version

Eksempel på å kjøre opp en stack:

docker compose up -d

Troubleshooting

"Permission denied while trying to connect to the Docker daemon socket"

Dette betyr at du hoppet over "Hovedsteg" ovenfor, eller glemte å logge ut/inn. Prøv å kjøre newgrp docker igjen.

"Unable to locate package docker-ce"

Sjekk at du kjørte sudo apt-get update etter at du la til repositoryet i Steg 2.