Läsare som du hjälper till att stödja MUO. När du gör ett köp med hjälp av länkar på vår webbplats kan vi tjäna en affiliate-provision.

Docker är det mest älskade programmeringsverktyget enligt Stack Overflows utvecklarundersökning från 2022. Det används flitigt inom IT och har revolutionerat sättet vi distribuerar applikationer på.

Docker-containrar liknar lite virtuella maskiner, men de är mer lätta och kommer packade med bara de grundläggande nödvändiga elementen i ett operativsystem. För att förstå hur minimala Docker-behållare kan vara, låt oss se hur du kan köra Ubuntu i Docker.

Steg 1: Skaffa Ubuntu Docker Image

Om du inte har Docker installerat, följ vår guide på installera Docker på Ubuntu. Och naturligtvis kan du också installera Docker på macOS och Windows.

Docker Hub är det rekommenderade arkivet för att få offentligt verifierade och officiella Docker-bilder. Du kan också använda Docker Hub för att hantera och skapa privata Docker-bilder.

Molnleverantörer som Azure och AWS tillhandahåller även Docker-arkiv där du kan vara värd för och hantera dina anpassade Docker-avbildningar.

instagram viewer

Du kan ladda ner den senaste bilden av Ubuntu med följande kommando:

sudo docker pull ubuntu

Docker laddar ner den senaste bilden till din PC om du inte redan har den lagrad lokalt.

Om du är intresserad av en specifik version, titta helt enkelt på de tillgängliga taggarna för bilden i Docker Hub och ladda ner den med den specifika taggen. Till exempel, för att ladda ner Ubuntu 20.04, kör:

sudohamnarbetaredraubuntu:20.04

Du kan lista alla Docker-bilder på din PC med hjälp av sudo docker-bilder kommando.

Steg 2: Kör Ubuntu-bilden

En Docker-bild är helt enkelt en ritning av instruktioner för att bygga en container. En behållare är en körande instans av en Docker-avbildning. För att få liv i Ubuntu-bilden du just laddade ner, kör följande kommando:

sudo docker run -ti --rm ubuntu /bin/bash

Detta kommando säger åt Docker att köra behållaren i ett interaktivt terminalläge (-ti). De /bin/bash argument är ett sätt att tala om för behållaren att köra bash-skalterminalen. Slutligen, den --rm flaggan instruerar Docker att automatiskt ta bort behållaren efter att vi stoppat den.

Skalet börjar som en root-användare och terminalen liknar vad du får på ett typiskt Linux-system. Som standard får behållaren ett slumpmässigt värdnamn.

Du kommer också att märka att bilden inte har ett GUI eller många andra vanliga kommandoradsverktyg som följer med Ubuntu. Ubuntu Docker-bilden är bara cirka 78 MB i storlek, vilket är superlätt.

Kör Linux-kommandon på Ubuntu Docker

Normalt kontrollerar du OS-information på Linux med hjälp av lsb_release -a kommandot, men i det här fallet kommer du att upptäcka att det här kommandot inte är tillgängligt eftersom Ubuntu-systemet inte har lsb-kärna paketet installerat som standard. Kom ihåg att Docker-bilder bara kommer med kärnelementen och inget annat.

Lyckligtvis kan vi kontrollera OS-informationen med kommandot cat, som kommer som en del av Bash-skalet.

katt /etc/os-släpp

Som du kan se från utgången är detta LTS-versionen av Ubuntu som släpptes 2022. Tack vare kraften i Docker kan vi köra ett OS med mycket minimala systemresurser.

Och eftersom det här helt enkelt är ett lättviktigt operativsystem kan vi installera de applikationer vi behöver med hjälp av bekanta Ubuntu-kommandon. Uppdatera först paketkällorna och installera lsb-kärna genom att skriva:

benägen uppdatering && apt Installera lsb-kärna

Observera att du inte behöver använda sudo kommandot när du har loggat in på Docker-skalet som rotanvändare.

När det är installerat kan du köra lsb_release -a kommandot och den här gången får du lite utdata.

Sparar Docker Container State

När du stoppar Docker-behållaren i detta skede kommer du att förlora alla ändringar du gjort, inklusive programuppdateringar och installerade verktyg. Det är så Docker-containrar är designade; de är lätta att byta ut, stoppa och hantera.

Som du kanske vet vid det här laget är Docker ett mångsidigt verktyg; det låter dig spara behållarnas tillstånd om du vill. Kontrollera först behållar-ID: t med följande kommando:

sudo docker ps

Det föregående kommandot listar alla Docker-behållare på din PC. Ubuntu-bilden i utgången ovan har ID: t 524aa76baafb, din kommer att vara en annan.

Spara tillståndet för behållaren genom att köra följande kommando:

hamnarbetare begå -p container_id new_container_name

Kom ihåg att byta ut container_id i följande kommando med rätt. Docker-bildnamn kan bara vara små bokstäver.

sudo docker begå -s 524aa76baafb myubuntu

Det föregående kommandot pausar behållaren innan den sparas och skapar en ny Docker-bild med namnet myubuntu. Den nya Docker-bilden kommer att innehålla alla ändringar som du har gjort i den. Och med det har du precis skapat en anpassad Ubuntu Docker-bild.

Om du listar dina Docker-bilder med hjälp av sudo docker-bilder kommandot bör din nya anpassade bild listas tillsammans.

Bestående data på Ubuntu Docker Container

En annan kraftfull funktion hos Docker är möjligheten att bevara eller dela data med värddatorn. Det finns två huvudalternativ: att använda monterade volymer eller Docker-volymer. Docker förespråkar det senare eftersom det är bättre i jämförelse med monterade volymer.

Du kan skapa en Docker-volym var som helst på din dator. Låt oss skapa den i hemkatalogen och döpa den till Docker_Share.

sudo mkdir -p Docker_Share

Stoppa sedan Ubuntu-behållaren med följande kommando och ersätt container_id med det faktiska ID: t för Docker-behållaren:

sudo docker sluta container_id

Slutligen kan vi köra Ubuntu-bilden för att bevara data med hjälp av Docker_Share katalog med kommandot nedan. Alternativt kan du skapa en docker-compose-fil för att enkelt aktivera dina Docker-bilder.

sudo docker kör -ti --rm -v ~/Docker_Share:/data ubuntu /bin/bash

Kommandot startar Ubuntu-bilden och skapar /data katalogen i Docker-behållaren. De /data katalogen är mappad till Docker_Share mapp som du skapade tidigare.

Du kan komma åt alla skapade eller modifierade filer på /data katalogen för behållaren med hjälp av Docker_Share katalog. Det omvända är också sant; Docker kommer att replikera alla filändringar i Docker_Share katalogen i /data katalogen för behållaren.

Docker är en bra ersättning för virtuella maskiner

Docker är en mycket kraftfull teknik som låter dig distribuera och köra applikationer i en säker och säker miljö. Du kan använda den för ett brett utbud av uppgifter och i de flesta fall klarar det dig att köra en lätt Docker-behållare istället för att köra en virtuell maskin.