Master Docker grunnleggende med disse viktige konseptene forklart i enkle ord.

Å mestre Docker er en ettertraktet ferdighet for backend-programvareingeniører. Docker vil hjelpe deg med å bygge, pakke og distribuere applikasjoner.

Dockeriserte applikasjoner kan kjøres i forskjellige miljøer. Dette reduserer nedetiden for applikasjoner og gir bedrifter et konkurransefortrinn. Men Docker kan være skremmende når du begynner å lære det. Her er viktige emner for å lære å mestre Docker.

Hva er Docker?

Docker er en programvare som brukes til å pakke applikasjoner inn i kjørbare enheter kalt containere. Docker gir støtte for å bygge, teste og distribuere applikasjoner raskt.

Når du bruker Docker, samhandler du med Docker Engine. Du kan installere Docker Engine på alle operativsystemer, inkludert Windows 10 og 11, Mac os, eller Ubuntu/Linux-systemer. Det er mange verktøy og konsepter du trenger for å lære å bruke Docker effektivt. Her er de viktigste for å komme i gang.

1. Docker-bilde

Et Docker-bilde er en lett plan som brukes til å lage containere. Det er en mal med instruksjoner som spesifiserer operativsystem, programkode og avhengigheter. Du definerer instruksjoner om hvordan du bygger bildet på en Dockerfile.

instagram viewer

I filen angir du alt søknaden din trenger. Docker bygger deretter bildet automatisk basert på instruksjonene som er gitt. Du kan finne forskjellige bilder på Dockers online register, Docker Hub. Docker anbefaler å bruke de offisielle bildene for sikkerhetsformål.

Du kan også bygge bilder basert på tilpassede konfigurasjoner. Bilder kommer i forskjellige størrelser, operativsystemer og språk. Du kan velge den som passer best for din applikasjon. For eksempel kan du lære hvordan bygge et Docker-bilde av et .NET web-API.

2. Docker Container

Beholdere er enheter som brukes til å pakke en applikasjon inn i en kjørbar enhet. Beholdere inkluderer alt som trengs for å kjøre en applikasjon, inkludert biblioteker, kode, avhengigheter og kjøretid.

Beholdere isolerer applikasjoner i enheter slik at de kan kjøre konsekvent på tvers av ulike miljøer. Containere lar deg administrere applikasjoner i utviklings- og produksjonsmiljøer uten å støte på feil. Det er mange brukssaker for containere som du kan utforske.

Docker-containere har detaljer som container-ID, bilde og basisoperativsystem. Du kan også se kjøretiden, statusen og navnet på beholderen. For å liste opp alle beholdere i systemet ditt, bruk følgende kommando:

docker container ls

Du vil se detaljer om alle kjørende containere:

Du kan også bruke docker ps for å se alle kjørende containere. Og docker container inspiser [container ID] for å se innholdet i en beholder.

4. Dockerfil

En Dockerfile er et dokument som spesifiserer instruksjoner om hvordan du bygger Docker-bildet. Filen spesifiserer basisbildet, applikasjonskoden og filene som trengs for å lage bildet.

Filen inkluderer også miljøvariablene og kommandoene for bildeoppretting. Du kan lage en Dockerfile som alle andre filer. Du må spesifisere instruksjonene på filen ved å bruke en syntaks som Docker forstår. Følgende er et eksempel på en eksempel Dockerfile:

5. Docker Compose

Docker Compose er et verktøy for å definere og kjøre Docker-applikasjoner med flere beholdere. Du konfigurerer alle tjenestene i en YAML-fil. En YAML-fil er et dokument der du spesifiserer de nødvendige tjenestene for søknaden din. Du kan deretter opprette og kjøre alle tjenestene ved å bruke en enkelt kommando.

Docker Compose kan kjøre applikasjoner i ulike miljøer. Disse kan være produksjons-, iscenesettelses-, utviklings- eller testmiljøer. Docker Compose forenkler den komplekse prosessen med å orkestrere flere containere.

Du kan bruke Docker Compose til å administrere en applikasjon gjennom hele livssyklusen. Dette kan inkludere start, stopp og ombygging av tjenester. Du kan også se statusen til kjørende tjenester, strømloggutdata og kjørekommandoer på en tjeneste.

Med Docker Compose kan du konfigurere nettverk, administrere volumer og spesifisere avhengigheter. Du kan også skalere applikasjoner horisontalt i produksjon ved å spesifisere replikatjenester.

Compose forenkler distribusjonen av komplekse applikasjoner til ulike miljøer. Du kan også bruke den til å replikere det samme miljøet i forskjellige systemer. Lær hvordan du bruker Docker Compose kan øke applikasjonens effektivitet.

Her er et eksempel på en Docker Compose YAML-fil:

6. Docker Hub

Docker Hub er et online containerregister for Docker. Siden det er det største containerregisteret, er det et samarbeidsverktøy for utviklere og åpen kildekode-bidragsytere. Det er også en utmerket markedsplass for programvareleverandører.

Docker Hub er en pålitelig ressurs for å finne pålitelig virtualiseringsprogramvare. Du kan opprette et depot og dele over 100 000 bilder.

Du kan vert for applikasjonene dine og kode på plattformen. Du kan også samarbeide om prosjekter med andre utviklere. Docker Hub har et gratis offentlig alternativ eller betalte private repoer for spesifikke autoriserte team.

7. Docker-nettverk

Docker-nettverk er en funksjon som lar containere kommunisere med hverandre og eksterne ressurser. Nettverk gir kontrollert og isolert kommunikasjon mellom containere. Disse kan være containere som kjører på én eller flere verter.

Når du kjører en container på maskinen din, er den ikke utsatt for eksterne nettverk. Du bruker porter for å eksponere beholderne for eksterne IP-adresser, DNS-tjenester, rutetabeller og internettgatewayer.

Nettverk gjør at containere kan operere i isolerte nettverksmiljøer. Nettverkene gir navnerom og IP-adresser, reduserer containerkonflikter og forbedrer sikkerheten.

8. Docker-volumer

I Docker er volumer en mekanisme som brukes til å lagre vedvarende data. Av design er containere flyktige. Det betyr at det er enkelt å erstatte eller ødelegge dem med alle dataene deres. Men det er tilfeller du ønsker å beholde dataene. I slike tilfeller kan du bruke Docker-volumer til å administrere vedvarende data.

Volumer har også andre bruksområder, inkludert å tillate deling av data mellom containere. De er enkle å sikkerhetskopiere og migrere sammenlignet med andre former for lagring. I tillegg kan du administrere volumer ved å bruke Docker CLI eller API.

Hvis du kjører en beholder uten et volum, oppretter Docker en automatisk. Du kan også opprette og administrere volumer isolert fra alle beholdere. Bruk følgende kommando for å lage et volum.

docker volume create my-vol

For å se volumet du opprettet, kjør følgende kommando:

docker volume ls //local my-vol

Du kan deretter feste volumene til hvilken som helst beholder du ønsker. Du kan lese mer om volumer på Docker offisiell dokumentasjon.

Andre Docker-funksjoner

Docker er et av de beste valgene for containeradministrasjon og versjonskontroll. Hvis du lærer Dockers verktøysett, kan du øke og effektivisere utviklingsarbeidsflyten din.

Docker har mange funksjoner som du kan bruke til å administrere applikasjonene dine. Etter å ha mestret nøkkelfunksjonene, kan du utforske andre komplekse funksjoner som Docker Swarm som brukes til å orkestrere komplekse applikasjoner.