Docker-vejledning for begyndere
I vores Docker-vejledning giver vi dig en introduktion til Docker-virtualiseringsplatformen og viser dig, hvordan du bruger Docker på dit Ubuntu 22.04-system ved hjælp af enkle, letforståelige instruktioner.
Dockers opbygning og funktioner
»Byg, distribuer og kør enhver app, hvor som helst« – det er Dockers motto. Den open source-baserede containerplatform tilbyder et fleksibelt og ressourcebesparende alternativ til emulering af hardwarekomponenter baseret på virtuelle maskiner (VM’er).
Mens traditionel hardwarevirtualisering bygger på, at der kører flere gæstesystemer på et fælles værtsystem, kører Docker-applikationer som isolerede processer på det samme system ved hjælp af containere. Dette kaldes containerbaseret virtualisering, også kendt som virtualisering på operativsystemniveau.

En stor fordel ved containerbaseret virtualisering er, at applikationer med forskellige krav kan køre adskilt fra hinanden uden at kræve den ekstra belastning, som et separat gæstesystem medfører. Derudover kan applikationer med containere implementeres på tværs af platforme og i forskellige infrastrukturer uden at skulle tilpasses værtsystemets hardware- eller softwarekonfigurationer.
Docker er det mest populære softwareprojekt, der giver brugerne adgang til containerbaseret virtualiseringsteknologi. Den open source-baserede platform bygger på tre grundlæggende komponenter. For at kunne køre containere behøver brugerne blot Docker-motoren samt specielle Docker-images, som kan hentes via Docker Hub eller oprettes selv.
Docker-billeder
Ligesom virtuelle maskiner er Docker-containere baseret på Docker-images. Et image er en skrivebeskyttet skabelon, der indeholder alle de instruktioner, som Docker-motoren har brug for til at oprette en container. Et Docker-image beskrives som et bærbart billede af en container i form af en tekstfil, også kaldet en Dockerfile. Hvis en container skal startes på et system, indlæses der først en pakke med det pågældende image, såfremt det ikke findes lokalt. Det indlæste billede leverer det nødvendige filsystem inklusive alle parametre til kørselstiden. En container kan betragtes som en kørende proces af et billede.
Docker Hub
Docker Hub er et cloudbaseret register for softwarearkiver, en slags bibliotek for Docker-billeder. Onlinetjenesten er opdelt i en offentlig og en privat sektion. Den offentlige sektion giver brugerne mulighed for at uploade deres egne udviklede billeder og dele dem med fællesskabet. Her findes der en række officielle billeder fra Docker-udviklerteamet og etablerede open source-projekter. Billeder, der uploades til den private del af registret, er ikke offentligt tilgængelige og kan derfor deles, for eksempel inden for en virksomheds interne kreds eller med venner eller bekendte. Docker Hub kan tilgås på hub.docker.com.
Docker-motoren
Kernen i Docker-projektet er Docker-motoren. Det er et open source-klient-server-program, som i den aktuelle version er tilgængeligt for alle brugere på alle gængse platforme.
Docker-motorens grundlæggende arkitektur er opdelt i tre komponenter: En daemon med serverfunktioner, et programmeringsgrænseflade (API) baseret på REST-paradigmet (Representational State Transfer) og operativsystemets terminal (kommandolinjegrænseflade, CLI) som brugergrænseflade (klient).
- Docker-daemon: Som server for Docker-motoren anvendes en daemon-proces. Docker-daemonen kører i baggrunden på værtsystemet og bruges til den centrale styring af Docker-motoren. Denne funktion opretter og administrerer alle billeder, containere og netværk.
- REST-API: REST-API’en specificerer et sæt grænseflader, der gør det muligt for andre programmer at kommunikere med Docker-daemonen og give den instruktioner. Et af disse programmer er operativsystemets terminal.
- Terminal: Som klientprogram bruger Docker operativsystemets terminal. Dette, integreret med Docker-daemonen via REST-API’en, gør det muligt for brugere at styre den via scripts eller brugerinput.
I 2017 blev Docker-motoren omdøbt til Docker Community Edition (forkortet til Docker CE), men den officielle dokumentation og Docker-repositorierne bruger for det meste stadig det gamle navn. Ud over Docker CE findes der også Docker Enterprise Edition (Docker EE), som indeholder en række avancerede funktioner. Den er dog ikke gratis og er derfor mere velegnet til virksomheder.
Med Docker-kommandoer kan brugerens softwarecontainere startes, stoppes og administreres direkte fra terminalen. Daemonen tilkaldes via kommandoen docker og kommandoer som build, pull eller run. Klient og server kan befinde sig på samme system. Brugere har også mulighed for at få adgang til en Docker-daemon på et andet system. Afhængigt af den type forbindelse, der oprettes, foregår kommunikationen mellem klienten og serveren via REST-API, via UNIX-sockets eller via en netværksgrænseflade.
Følgende figur illustrerer samspillet mellem de enkelte Docker-komponenter ved hjælp af eksempelkommandoerne docker build, docker pull og docker run:

Kommandoen docker build instruerer Docker-daemonen om at oprette et image (stiplet linje). Til dette skal der foreligge en tilhørende Dockerfile. Hvis imaget ikke skal oprettes, men i stedet hentes fra et repository i Docker Hub, anvendes kommandoen docker pull (streglinje). Hvis Docker-daemonen via docker run får besked på at starte en container, kontrollerer baggrundsprogrammet, om det tilsvarende containerbillede er tilgængeligt lokalt. Hvis det er tilfældet, køres containeren (hel linje). Hvis daemonen ikke kan finde billedet, initierer den automatisk en pull fra repositoriet.
Arbejde med Docker
Nu er det tid til at stifte bekendtskab med containerplatformens applikationer. Hvis du endnu ikke har installeret Docker-motoren, kan du gøre det via Linux-terminalen. Du kan finde vejledning i, hvordan du gør dette, i vores artikel med titlen»Installer Docker på Ubuntu 22.04«. Læs nedenfor, hvordan du styrer Docker-motoren fra terminalen, hvad Docker Hub kan gøre for dig, og hvorfor Docker-containere kan revolutionere den måde, du arbejder med applikationer på.
Sådan styrer du Docker-motoren
Siden version 16.04 har Ubuntu brugt baggrundsprogrammet systemd(forkortelse for »system daemon«) til at styre processer.Systemd eren init-proces, der også bruges i andre Linux-distributioner som RHEL, CentOS eller Fedora.Systemd tildelestypisk proces-ID 1. Som systemets første proces har daemonen til opgave at starte, overvåge og afslutte alle efterfølgende processer. I tidligere Ubuntu-versioner (14.10 og ældre) varetager baggrundsprogrammetupstart denne funktion.
Docker-daemonen kan også styres via systemd. I standardinstallationen er containerplatformen konfigureret således, at daemonen starter automatisk, når systemet startes op. Denne standardindstilling kan tilpasses via kommandolinjeværktøjet systemctl.
Med systemctl sender du kommandoer til systemd for at styre en proces eller hente dens status. Syntaksen for en sådan kommando er som følger:
systemctl [OPTION] [COMMAND]bashNogle kommandoer henviser til bestemte ressourcer (for eksempel Docker). I systemd-terminologien kaldes disse for enheder. I dette tilfælde består kommandoen af den pågældende instruktion og navnet på den enhed, der skal adresseres.
Hvis du vil aktivere (enable) eller deaktivere (disable) autostart af Docker-daemonen, skal du bruge kommandolinjeværktøjet systemctl med følgende kommandoer:
sudo systemctl enable docker
sudo systemctl disable dockerbashKommandolinjeværktøjet systemctl giver dig mulighed for at tjekke status for en enhed:
sudo systemctl status dockerbashHvis Docker-motoren på dit Ubuntu-system er aktiv, bør udskriften i terminalen se ud som på nedenstående skærmbillede:

Hvis din Docker-motor i øjeblikket er deaktiveret, vil du se statusangivelsen »inaktiv (død)«. I dette tilfælde skal du manuelt starte Docker-daemonen for at kunne køre containere.

Hvis du vil starte, stoppe eller genstarte din Docker-motor manuelt, skal du bruge en af følgende kommandoer i systemd.
For at starte den deaktiverede daemon skal du bruge systemctl sammen med kommandoen start:
sudo systemctl start dockerbashHvis Docker-daemonen skal afsluttes, skal du i stedet bruge kommandoen stop:
sudo systemctl stop dockerbashDer anmodes om en genstart af motoren med kommandoen restart:
sudo systemctl restart dockerbashSådan bruger du Docker Hub
Hvis Docker-motoren udgør hjertet i containerplatformen, så er Docker Hub sjælen i open source-projektet. Det er her, fællesskabet mødes. I det cloudbaserede register kan brugerne finde alt, hvad de har brug for, for at få liv i deres Docker-installation.
Onlinetjenesten tilbyder en række officielle arkiver med over 100.000 gratis apps. Brugerne har mulighed for at oprette et billedarkiv og dele det med arbejdsgrupper. Ud over den professionelle support, som udviklerteamet tilbyder, kan begyndere her finde kontakt til brugerfællesskabet. Der findes et forum for brugerstøtte på GitHub.

Registrering på Docker Hub
Det er gratis at oprette en konto på Docker Hub. Brugere skal blot have en e-mailadresse og deres valgte Docker-ID. Dette fungerer senere som et personligt repository-navneområde og giver brugerne adgang til alle Docker-tjenester. I øjeblikket omfatter dette tilbud Docker Cloud, Docker Store og udvalgte betaprogrammer ud over Docker Hub. Det gør det også muligt at bruge Docker-ID’et som login til Docker Support Center samt Docker Success Portal og Docker Forum.
Registreringsprocessen består af fem trin:
- Vælg dit Docker-ID: Som det første trin i tilmeldingen skal du vælge et brugernavn, der senere vil blive brugt som dit personlige Docker-ID.
- Indtast en e-mailadresse: Indtast din nuværende e-mailadresse. Bemærk, at du skal bekræfte din registrering hos Docker Hub via e-mail.
- Vælg en adgangskode: Vælg en hemmelig adgangskode.
- Indsend din registrering: Klik på ‘Tilmeld’ for at indsende din registrering. Når dataene er blevet overført, sender Docker et link til din angivne indbakke, hvor du kan bekræfte din e-mailadresse.
- Bekræft din e-mailadresse: Bekræft din e-mailadresse ved at klikke på bekræftelseslinket.
Docker-projektets onlinetjenester er tilgængelige med det samme, når du har tilmeldt dig i browseren. Her kan du oprette repositorier og arbejdsgrupper eller søge efter offentlige ressourcer på Docker Hub ved hjælp af funktionen »Explore«.

Du kan også logge ind direkte i dit operativsystems terminal ved hjælp af kommandoen docker login. Du finder en detaljeret beskrivelse af kommandoen i Docker-dokumentationen.
I princippet er Docker Hub også tilgængelig for brugere uden en konto eller et Docker-ID. I dette tilfælde kan man dog kun hente billeder fra offentlige repositorier. Det er ikke muligt at uploade (push) egne billeder uden et Docker-ID.
Opret repositorier i Docker Hub
Den gratis Docker Hub-konto indeholder ét privat repository og giver mulighed for at oprette et ubegrænset antal offentlige repositorier. Hvis du har brug for flere private repositorier, kan du få adgang til disse ved at opgradere til en betalt version.
Gør følgende for at oprette et arkiv:
- Vælg et navneområde: Nyligt oprettede repositorier tildeles automatisk navneområdet for dit Docker-ID. Du har også mulighed for at indtaste ID’et for en organisation, som du er medlem af.
- Navngiv repositoriet: Indtast et navn til det nyoprettede repository.
- Tilføj en beskrivelse: Tilføj en kort beskrivelse af dit repository.
- Indstil synlighed: Vælg, om repositoriet skal være offentligt synligt (offentligt) eller kun tilgængeligt for dig eller din organisation (privat).
Bekræft dine indtastninger ved at klikke på »Opret«.

Opret teams og organisationer
Med hubben tilbyder Docker en cloudbaseret platform, hvor brugerdefinerede billeder administreres centralt og nemt kan deles med arbejdsgrupper. I Docker-terminologien kaldes disse for organisationer. Ligesom brugerkonti tildeles organisationer individuelle ID’er, som bruges til at stille billeder til rådighed og downloade dem. Rettigheder og roller inden for en organisation kan tildeles via teams. For eksempel har brugere, der er tilknyttet teamet »Owners«, beføjelse til at oprette private eller offentlige repositorier og tildele adgangsrettigheder.
Arbejdsgrupper kan også oprettes og administreres direkte via kontrolpanelet. Du kan finde yderligere oplysninger om organisationer og teams i Docker-dokumentationen.
Arbejde med billeder og containere
Som det første kontaktpunkt for officielle Docker-ressourcer er Docker Hub vores udgangspunkt for denne introduktion til håndtering af billeder og containere. Udviklerteamet har stillet demo-billedet »whalesay« til rådighed, som vil danne grundlag for den følgende Docker-vejledning.
Download Docker-billeder
Du kan finde billedet »whalesay« ved at gå ind på Docker Hub-webstedet og skrive »whalesay« i søgefeltet ved siden af Docker-logoet.

Klik på ressourcen med titlen docker/whalesay i søgeresultaterne for at få adgang til det offentlige repository for dette billede.
Docker-arkiver er altid opbygget efter det samme mønster. Øverst på siden kan brugerne se billedets titel, arkivets kategori og tidspunktet for den seneste upload (sidste push).

Hvert Docker-repository indeholder desuden følgende infobokse:
- Beskrivelse: Detaljeret beskrivelse, som normalt indeholder brugsanvisninger
- Docker pull-kommando: Kommandolinjedirektiv, der bruges til at downloade billedet fra repositoriet (
pull) - Ejer: Oplysninger om ophavsmanden til repositoriet
- Kommentarer: Kommentarfelt nederst på siden
Oplysningerne i arkivets informationsfelter viser, at whalesay er en videreudvikling af open source-Perl-scriptet cowsay. Programmet, der blev udviklet af Tony Monroe i 1999, genererer en ASCII-grafik i form af en ko, som vises sammen med en besked på brugerens terminal.
For at downloade docker/whalesay skal du bruge kommandoen docker pull:
docker pull [OPTIONS] NAME [:TAG|@DIGEST]bashKommandoen docker pull instruerer daemonen om at hente et image fra repositoriet. Du angiver, hvilket image der er tale om, ved at indtaste image-titlen (NAME). Du kan også angive over for Docker, hvordan den ønskede kommando skal udføres (OPTIONS). Valgfri indtastning omfatter tags (:TAG) og individuelle identifikationsnumre (@DIGEST), som giver dig mulighed for at downloade en bestemt version af et image.
Man henter en lokal kopi af docker/whalesay-billedet med følgende kommando:
docker pull docker/whalesaybashSom udgangspunkt kan du springe dette trin over. Hvis du vil starte en container, henter Docker-daemonen automatisk de billeder fra arkivet, som den ikke kan finde på det lokale system.
Start Docker-billeder som containere
For at starte et Docker-billede skal du bruge kommandoen docker run:
docker run [OPTIONS] IMAGE [:TAG|@DIGEST] [CMD] [ARG...]bashDen eneste obligatoriske del af kommandoen docker run er navnet på det ønskede Docker-billede. Men når du starter en container, har du også mulighed for at angive ekstra indstillinger, TAG’er og DIGEST’er. Derudover kan kommandoen docker run kombineres med andre kommandoer, der udføres, så snart containeren starter. I dette tilfælde overskrives CMD (COMMAND, defineret af billedskaberen og udført automatisk, når containeren startes). Andre valgfri konfigurationer kan defineres gennem yderligere argumenter (ARG…). Dette gør det for eksempel muligt at tilføje brugere eller overføre miljøvariabler.
Brug kommandolinjedirektivet
docker run docker/whalesay cowsay boobashfor at downloade det eksisterende Perl-script som et billede og køre det i en container. Du vil se, at whalesay adskiller sig markant fra kildescriptet.

Hvis billedet docker/whalesay køres, viser scriptet en ASCII-grafik i form af en hval samt tekstbeskeden »boo«, som sendes via kommandoen cowsay i terminalen.
Ligesom ved testkørslen søger daemonen først efter det ønskede billede i det lokale filmappe. Da der ikke findes en pakke med samme navn, igangsættes en hentning fra Docker-arkivet. Derefter starter daemonen det ændrede cowsay-program. Når dette er kørt færdigt, lukkes containeren automatisk.
Ligesom cowsay giver Dockers whalesay også mulighed for at gribe ind i programforløbet for at påvirke den tekst, der vises i terminalen. Prøv denne funktion ved at erstatte »boo« i kommandoen output med en vilkårlig tekststreng eller f.eks. en dårlig hval-vits.
sudo docker run docker/whalesay cowsay What did the shark say to the whale? What are you blubbering about?bash
Vis alle Docker-billeder på det lokale system
Hvis du ikke er sikker på, om du allerede har downloadet et bestemt billede, kan du få vist en oversigt over alle billederne på din lokale computer. Brug følgende kommandolinjekommando:
sudo docker imagebashKommandoen docker images (alternativ docker image ls) viser alle lokale billeder, herunder filstørrelse, tag og billed-ID.

Når du starter en container, downloades det underliggende billede som en kopi fra arkivet og gemmes permanent på din computer. Det sparer dig tid, hvis du senere vil bruge billedet. Der iværksættes kun en ny download, hvis billedkilden ændres, for eksempel hvis der er en nyere version tilgængelig i arkivet.
Vis alle containere på det lokale system
Hvis du vil få vist en oversigt over alle containere, der kører på dit system eller har kørt tidligere, skal du bruge kommandolinjekommandoen docker ps sammen med indstillingen --all (forkortet: -a):
sudo docker ps -abash
Terminaludskriften indeholder oplysninger som den pågældende containers ID, det underliggende billede, den kommando, der blev kørt, da containeren blev startet, tidspunktet for containerens opstart samt status.
Hvis du kun vil vise de containere, der i øjeblikket kører på dit system, skal du bruge kommandolinjedirektivet docker ps uden yderligere indstillinger:
sudo docker psbashI øjeblikket bør der dog ikke køre nogen containere på dit system.
Opret Docker-billeder
Som vores Docker-vejledning har vist, kan du finde billeder i Docker Hub, downloade dem og køre dem på ethvert system, hvor Docker-motoren er installeret. Men med Docker får du ikke kun adgang til det omfattende udvalg af apps, der findes i registret. Platformen byder også på en lang række muligheder for at oprette dine egne billeder og dele dem med andre udviklere.
I de indledende kapitler af denne Docker-vejledning har du allerede lært, at hvert Docker-billede er baseret på en Dockerfile. Du kan forestille dig Dockerfiles som en slags skabelon til opbygning af billeder. Det er enkle tekstfiler, der indeholder alle de instruktioner, Docker har brug for til at oprette et billede. I de følgende trin lærer du, hvordan du skriver en sådan Dockerfile og instruerer Docker i at bruge den som grundlag for dit eget billede.
- Opret en ny mappe: Docker-udviklerteamet anbefaler, at der oprettes en ny mappe til hver Dockerfile. Under Linux kan man nemt oprette mapper i terminalen. Brug følgende kommandolinjekommando til at oprette en mappe med navnet mydockerbuild:
mkdir mydockerbuildbash
- Naviger i det nye bibliotek: Brug kommandoen
cdtil at navigere i det nyoprettede arbejdsbibliotek.
cd mydockerbuildbash
- Opret en ny tekstfil: Du kan også nemt oprette tekstfiler via terminalen i Ubuntu. Brug til dette en editor som f.eks. Nano eller Vim. Opret en tekstfil med navnet Dockerfile i mappen mydockerbuild.
nano Dockerfilebash
- Skriv en Dockerfile: Den nyoprettede tekstfil fungerer som en byggevejledning til dit egenudviklede image. I stedet for at programmere imaget fra bunden vil vi i denne Docker-vejledning bruge demo-imaget docker/whalesay som skabelon. Dette integreres ved hjælp af kommandoen FROM i din Dockerfile. Brug tagget :latest for at henvise til den nyeste version af imaget.
FROM docker/whalesay:latestIndtil videre fungerer docker/whalesay sådan, at du selv skriver teksten. I terminalen vises den nøjagtige tekst, du har indtastet, sammen med kommandoen til at starte containeren. Men det ville være mere interessant, hvis scriptet automatisk genererede ny tekst. Dette kan f.eks. gøres ved at bruge programmet fortunes, som findes på alle Linux-systemer. Den grundlæggende funktion af fortunes er at generere citater fra lykkekager og humoristiske aforismer. Brug følgende kommando til at opdatere dit nuværende lokale pakkeindeks og installere fortunes:
RUN apt-get -y update && apt-get install -y fortunesDefiner derefter en CMD-sætning. Denne udføres efter RUN-kommandoen, medmindre den er blevet overskrevet af call (docker run image CMD). Brug følgende kommando til at køre programmet fortunes med optionen -a (‘Vælg fra alle databaser’) og vise resultatet via programmet cowsay i terminalen:
CMD /usr/games/fortune -a | cowsayDin Dockerfile skal se således ud:
FROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsayBemærk: Kommandoer i en Dockerfile skrives altid med enkelt linjeafstand og begynder altid med et nøgleord. Den underliggende syntaks er ikke skelnen mellem store og små bogstaver, så det er ligegyldigt, om du skriver med store eller små bogstaver. Der er dog fastlagt en ensartet brug af store bogstaver i nøgleordene.

- Gem tekstfil: Gem din indtastning. Hvis du bruger Nano-editoren, skal du gemme med tastkombinationen [CTRL] + [O] og bekræfte med [ENTER]. Nano viser en meddelelse om, at der er skrevet tre linjer til den valgte fil. Luk teksteditoren med tastkombinationen [CTRL] + [X].
- Opret billede som Dockerfile: For at oprette et billede fra en Dockerfile skal du først navigere til det bibliotek, hvor tekstfilen er placeret. Start oprettelsen af billedet med kommandolinjedirektivet
docker build. Hvis du vil navngive billedet individuelt eller give det et tag, skal du bruge indstillingen-tefterfulgt af den ønskede kombination af label og tag. Standardformatet ername:tag.
I dette eksempel skal der oprettes et billede med navnet docker-whale:
docker build -t docker-whale .bashDet sidste punkt angiver, at den underliggende Dockerfile findes i det valgte bibliotek. Du har også mulighed for at angive en filsti eller en URL til kildefilerne.
Kompileringsprocessen starter, så snart kommandoen bekræftes med [ENTER]. Først kontrollerer Docker-daemonen, om den har alle de filer, der skal til for at oprette billedet. I Docker-terminologi samles dette under betegnelsen »kontekst«.
Derefter findes Docker-billedet »whalesay« med mærket :latest:
Hvis den nødvendige kontekst til oprettelsen af billedet allerede findes i sin helhed, starter Docker-daemonen det billedskabelon, der er angivet via FROM, i en midlertidig container og går videre til den næste kommando i Dockerfilen. I det aktuelle eksempel er dette RUN-kommando en, som sørger for, at programmet fortunes installeres.
Ved afslutningen af hvert trin i billedoprettelsesprocessen tildeler Docker et ID til det pågældende lag, der oprettes i det pågældende trin. Det betyder, at hver linje i den underliggende Dockerfile svarer til et lag i det billede, der bygges på baggrund af den.
Når RUN-kommandoen er afsluttet, stopper Docker-daemonen den container, der er oprettet til den, sletter den og starter en ny midlertidig container til laget fra CMD-sætningen. Ved afslutningen af oprettelsesprocessen lukkes og slettes denne midlertidige container også. Docker viser ID’et for det nye billede:
Successfully built a8f2048c9ab8
Dit nyoprettede billede kan findes under navnet docker-whale i oversigten over dine lokalt gemte billeder.
sudo docker imagesbash
For at starte en container ud fra dit nyoprettede image skal du bruge kommandolinjeparameteren sudo docker run sammen med navnet på imaget:
sudo docker run docker-whalebashHvis billedet er blevet oprettet korrekt ud fra Dockerfilen, bør din hval nu inspirere dig med mere eller mindre vise ord. Bemærk: Hver gang du genstarter containeren, genereres der en ny sætning.

Mærk Docker-billeder, og upload dem til Docker Hub
Hvis du vil uploade dit brugerdefinerede docker-whale-billede til hubben og gøre det tilgængeligt for enten fællesskabet eller en arbejdsgruppe, skal du først knytte det til et repository med samme navn i dit eget personlige navneområde. I Docker-terminologien kaldes dette trin for tagging.
Gør følgende for at offentliggøre et billede på Docker Hub:
- Opret et repository: Log ind på Docker Hub med dit Docker-ID og din personlige adgangskode, og opret et offentligt repository med navnet docker-whale.

- Find billed-ID’et: Find ID’et for dit brugerdefinerede billede »docker-whale« ved hjælp af kommandolinjeparameteren
docker images.

I vores tilfælde er billed-id’et a8f2048c9ab8. Det skal vi bruge til mærkning i næste trin.
- Mærk billedet: Mærk billedet »docker-whale« ved hjælp af kommandolinjeprogrammet
docker tagsom beskrevet nedenfor:
sudo docker tag [Image-ID][Docker-ID]/[Image-Name]:[TAG]bashI dette eksempel lyder kommandolinjedirektivet til mærkning således:
sudo docker tag a8f2048c9ab8 [Namespace]/docker-whale:latestbashDu kan kontrollere, om du har tagget dit billede korrekt, ved hjælp af oversigten docker images. Navnet på repositoriet bør nu indeholde dit Docker-ID.

- Upload billedet: For at uploade billedet skal du først logge ind på Docker Hub. Dette gøres ved hjælp af kommandoen
docker login.
sudo docker loginbashTerminalen beder dig derefter om at indtaste dit brugernavn (Docker-ID) og din adgangskode.

Hvis loginet lykkedes, skal du bruge kommandolinjeparameteren docker push til at uploade dit billede til det nyoprettede arkiv.
sudo docker push [Namespace]/docker-whalebashOverførslen tager kun et par sekunder. Den aktuelle status vises i terminalen.

Log ind på Docker Hub via browseren for at se det uploadede billede.
![Docker hub: The repository [Namespace]/docker-whale in the detailed view Billede: Docker hub: The repository [Namespace]/docker-whale in the detailed view](https://www.ionos.com/da-dk/digitalguide/fileadmin/_processed_/5/e/csm_docker-hub-push-result_56530d8ebc.webp)
Hvis du vil uploade mere end ét billede pr. repository, skal du bruge forskellige tags for at tilbyde dine billeder i forskellige versioner. For eksempel:
[Namespace]/docker-whale:latest
[Namespace]/docker-whale:version1
[Namespace]/docker-whale:version2Du kan finde en oversigt over de forskellige billedversioner i Docker Hub-repositoriet under fanen »Tags«.

Billeder fra de forskellige projekter bør dog lægges i separate arkiver.
Hvis overførslen lykkedes, vil dit brugerdefinerede billede nu være tilgængeligt i det offentlige arkiv for alle Docker-brugere verden over.
- Testkørsel: Test, om uploaden er lykkedes, ved at forsøge at downloade billedet.
Bemærk, at den lokale version af billedet først skal slettes, før du kan downloade en ny kopi med samme tag. Ellers vil Docker meddele, at det ønskede billede allerede findes i den aktuelle version.

For at slette det lokale Docker-billede skal du bruge kommandolinjekommandoen docker rmi sammen med det tilhørende billed-ID. Dette fastlægges som sædvanlig via docker images. Hvis Docker melder en konflikt, f.eks. fordi et billed-ID bruges i flere repositorier eller i en container, skal du gentage kommandoen med parameteren --force (forkortet*-f* ) for at tvinge sletningen igennem.
sudo docker rmi -f a8f2048c9ab8bash
Vis en oversigt over alle lokale billeder igen:
sudo docker ImagesbashDe slettede elementer bør ikke længere vises i terminaludskriften. Brug nu kommandoen »pull« fra repositoriet til at hente en ny kopi af billedet fra Docker Hub.
sudo docker pull [Namespace]/docker-whalebash
Yderligere emner og vejledninger om Docker
Docker-universet er stort, og med tiden er der opstået et levende økosystem omkring Docker-værktøjerne. Docker er særligt nyttigt for systemadministratorer, især hvis de administrerer komplekse applikationer med flere containere, der kører sideløbende på forskellige systemer. Docker tilbyder en række funktioner til orkestrering af netop sådanne klynger. Du kan finde mere information om dette i vores artikel om Docker-orkestrering med Swarm og Compose.
Den digitale guide indeholder yderligere vejledninger til brug af Docker:
- Opsætning af et Docker-repository
- Docker-container-volumener
- Docker: Sikkerhedskopiering og gendannelse
- Installation og kørsel af Docker på en Linux-server
- Vejledning i Docker Compose
Docker egner sig til mange forskellige anvendelsesscenarier. I den digitale guide finder du følgende vejledninger:
- Implementering af WordPress i Docker-containere
- Kør en VPN i en Docker-container ved hjælp af SoftEther
- Nextcloud-installation med Docker
- Installer Portainer under Docker
- Redis i Docker-containere
- Valheim Docker-server
Docker er ikke altid det bedste valg til alle applikationer. I en af vores artikler gennemgår vi de mest populære alternativer til Docker. Derudover har vi mange artikler, der sammenligner Docker med andre platforme:
- Kubernetes kontra Docker
- Openshift vs. Docker
- Podman vs. Docker