Master Docker grunderna med dessa viktiga begrepp förklarade i enkla ord.

Att bemästra Docker är en eftertraktad färdighet för mjukvaruingenjörer i backend. Docker hjälper dig att bygga, paketera och distribuera applikationer.

Dockeriserade applikationer kan köras i olika miljöer. Detta minskar applikationens stilleståndstid och ger företag en konkurrensfördel. Men Docker kan vara skrämmande när du börjar lära dig det. Här är viktiga ämnen att lära sig att bemästra Docker.

Vad är Docker?

Docker är en programvara som används för att paketera applikationer till körbara enheter som kallas behållare. Docker ger stöd för att snabbt bygga, testa och distribuera applikationer.

När du använder Docker interagerar du med Docker Engine. Du kan installera Docker Engine på alla operativsystem, inklusive Windows 10 och 11, Mac OS, eller Ubuntu/Linux-system. Det finns många verktyg och koncept du behöver för att lära dig använda Docker effektivt. Här är de viktigaste för att komma igång.

1. Docker-bild

En Docker-bild är en lätt ritning som används för att skapa behållare. Det är en mall med instruktioner som anger operativsystem, programkod och beroenden. Du definierar instruktioner om hur du bygger bilden på en Dockerfil.

instagram viewer

I filen anger du allt din ansökan behöver. Docker bygger sedan bilden automatiskt baserat på instruktionerna. Du kan hitta olika bilder på Dockers onlineregister, Docker Hub. Docker rekommenderar att du använder de officiella bilderna av säkerhetsskäl.

Du kan också bygga bilder baserat på skräddarsydda konfigurationer. Bilder finns i olika storlekar, operativsystem och språk. Du kan välja den som bäst passar din applikation. Du kan till exempel lära dig hur man bygger en Docker-bild av ett .NET webb-API.

2. Docker Container

Behållare är enheter som används för att paketera en applikation till en körbar enhet. Behållare innehåller allt som behövs för att köra en applikation, inklusive bibliotek, kod, beroenden och körtid.

Behållare isolerar applikationer till enheter så att de kan köras konsekvent i olika miljöer. Behållare låter dig hantera applikationer i utvecklings- och produktionsmiljöer utan att stöta på fel. Det finns många användningsfall för containrar som du kan utforska.

Docker-containrar har detaljer som container-ID, image och basoperativsystem. Du kan också se körtid, status och namn på behållaren. För att lista alla behållare i ditt system, använd följande kommando:

docker container ls

Du kommer att se detaljer om alla körda behållare:

Du kan också använda hamnare ps för att se alla pågående containrar. Och docker container inspect [container ID] för att se innehållet i en behållare.

4. Dockerfil

En Dockerfil är ett dokument som anger instruktioner om hur man bygger Docker-avbildningen. Filen anger basbilden, programkoden och de filer som behövs för att skapa bilden.

Filen innehåller även miljövariabler och kommandon för bildskapande. Du kan skapa en Dockerfil som vilken annan fil som helst. Du måste ange instruktionerna på filen med en syntax som Docker förstår. Följande är ett exempel på en dockerfil:

5. Docker Compose

Docker Compose är ett verktyg för att definiera och köra Docker-applikationer med flera behållare. Du konfigurerar alla tjänster i en YAML-fil. En YAML-fil är ett dokument där du anger de tjänster som behövs för din applikation. Du kan sedan skapa och köra alla tjänster med ett enda kommando.

Docker Compose kan köra applikationer i olika miljöer. Dessa kan vara produktions-, iscensättnings-, utvecklings- eller testmiljöer. Docker Compose förenklar den komplexa processen att orkestrera flera containrar.

Du kan använda Docker Compose för att hantera en applikation under hela dess livscykel. Detta kan inkludera att starta, stoppa och bygga om tjänster. Du kan också se status för pågående tjänster, strömloggutdata och körkommandon på en tjänst.

Med Docker Compose kan du konfigurera nätverk, hantera volymer och ange beroenden. Du kan även skala applikationer horisontellt i produktionen genom att specificera repliktjänster.

Compose förenklar distributionen av komplexa applikationer till olika miljöer. Du kan också använda den för att replikera samma miljö i olika system. Lär dig hur du använder Docker Compose kan öka din applikations effektivitet.

Här är ett exempel på en Docker Compose YAML-fil:

6. Docker Hub

Docker Hub är ett online containerregister för Docker. Eftersom det är det största containerregistret är det ett samarbetsverktyg för utvecklare och bidragsgivare med öppen källkod. Det är också en utmärkt marknadsplats för programvaruleverantörer.

Docker Hub är en pålitlig resurs för att hitta tillförlitlig virtualiseringsprogramvara. Du kan skapa ett arkiv och dela över 100 000 bilder.

Du kan värd för dina applikationer och kod på plattformen. Du kan också samarbeta i projekt med andra utvecklare. Docker Hub har ett gratis offentligt alternativ eller betalda privata repor för specifika auktoriserade team.

7. Docker-nätverk

Docker-nätverk är en funktion som gör att containrar kan kommunicera med varandra och externa resurser. Nätverk ger kontrollerad och isolerad kommunikation mellan containrar. Dessa kan vara behållare som körs på enstaka eller flera värdar.

När du kör en behållare på din dator exponeras den inte för externa nätverk. Du använder portar för att exponera behållarna för externa IP-adresser, DNS-tjänster, rutttabeller och internetgateways.

Nätverk tillåter behållare att fungera i isolerade nätverksmiljöer. Nätverken tillhandahåller namnområden och IP-adresser, vilket minskar containerkonflikter och förbättrar säkerheten.

8. Docker-volymer

I Docker är volymer en mekanism som används för att lagra beständig data. Till sin design är behållare tillfälliga. Det betyder att det är lätt att ersätta eller förstöra dem med all deras data. Men det finns tillfällen du skulle vilja behålla data. I sådana fall kan du använda Docker-volymer för att hantera beständiga data.

Volymer har också andra användningsområden, inklusive att tillåta delning av data mellan behållare. De är lätta att säkerhetskopiera och migrera jämfört med andra former av lagring. Dessutom kan du hantera volymer med Docker CLI eller API.

Om du kör en behållare utan en volym, skapar Docker automatiskt en. Du kan också skapa och hantera volymer isolerade från alla behållare. Använd följande kommando för att skapa en volym.

docker volume create my-vol

För att se volymen du skapade, kör följande kommando:

docker volume ls //local my-vol

Du kan sedan fästa volymerna på vilken behållare du vill. Du kan läsa mer om volymer på Hamnarbetare officiell dokumentation.

Andra Docker-funktioner

Docker är ett av de bästa valen för containerhantering och versionskontroll. Om du lär dig Dockers verktygsuppsättning kan du öka och effektivisera ditt utvecklingsarbetsflöde.

Docker har många funktioner som du kan använda för att hantera dina applikationer. Efter att ha bemästrat nyckelfunktionerna kan du utforska andra komplexa funktioner som Docker Swarm som används för att orkestrera komplexa applikationer.