Si të instaloni dhe të filloni me Docker Desktop në Linux


Docker Desktop është një zgjidhje popullore e kontejnerizimit që bashkon gjithçka që ju nevojitet për të ndërtuar imazhe dhe për të drejtuar kontejnerët. Një shkarkim ju jep Docker, Docker Compose, Kubernetes, një GUI gjithëpërfshirës dhe mbështetje për një përzgjedhje të madhe shtesash të palëve të treta.

Docker Desktop historikisht ka qenë i kufizuar në sistemet Windows dhe Mac. Përdoruesve të Linux u është dashur të instalojnë manualisht Docker Engine dhe të ndërveprojnë me të nga terminali ose një ndërfaqe e veçantë përdoruesi. Docker njoftoi një version të Desktop për Linux në DockerCon 2022, duke ofruar më në fund barazi të veçorive në të tre platformat kryesore. Ky udhëzues do t'ju tregojë se si ta konfiguroni dhe të filloni.

Përgatitja për të ekzekutuar Desktopin Docker

Hapat në këtë artikull janë testuar në një mjedis të pastër Ubuntu 22.04. Desktop mbështetet gjithashtu në Ubuntu 21.10, Debian 11 dhe Fedora 35/36. Dokumentacioni specifik për distro është i disponueshëm në faqen e internetit të Docker.

Desktopi kërkon një sistem 64-bitësh me 4 GB RAM dhe virtualizimin e harduerit KVM të aktivizuar. Moduli i kernelit KVM zakonisht aktivizohet automatikisht kur hosti juaj mbështet virtualizimin. Mund ta kontrolloni duke ekzekutuar komandën kvm-ok:

$ kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

Aktivizo virtualizimin në BIOS ose UEFI të sistemit nëse kvm-ok raporton një gabim. Mund të provoni gjithashtu të ngarkoni manualisht modulin e kernelit KVM duke përdorur modprobe:

# 1/2
$ sudo modprobe kvm

# 2/2 INTEL ONLY
$ sudo modprobe kvm_intel

# 2/2 AMD ONLY
$ sudo modprobe kvm_amd

Docker Desktop nuk është krijuar për të funksionuar së bashku me Docker Engine. Duhet të ndaloni shërbimin Docker nëse tashmë keni përdorur Docker Engine në kompjuterin tuaj. Kjo do të reduktojë konsumin e burimeve dhe do të minimizojë rrezikun e konflikteve midis Motorit dhe Desktopit.

$ sudo service docker stop

Instalimi i Docker Desktop

Paketa Docker Desktop nuk është ende e disponueshme në depo, kështu që duhet të merret manualisht. Shkarkoni paketën e duhur për sistemin tuaj operativ duke përdorur lidhjet në dokumentacion.

$ wget https://desktop.docker.com/linux/main/amd64/docker-desktop-4.12.0-amd64.deb

Paketa Docker Desktop varet nga paketat e tjera nga depoja e Docker. Edhe pse vetë Desktop nuk është i instaluar nga depoja, ju duhet ende në listën tuaj të burimeve në mënyrë që varësitë të mund të zgjidhen. Ekzekutoni sekuencën e mëposhtme të komandave për të shtuar depon e Docker's Apt në kompjuterin tuaj:

$ sudo apt update
$ sudo apt-get install -y \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

# Download the GPG key used to sign the packages in the repository
$ sudo mkdir -p /etc/apt/keyrings
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# Add the repository to your package sources list
$ echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt update

Tani mund të instaloni paketën Desktop me komandën install të Apt:

$ sudo apt install -y ./docker-desktop-4.12.0-amd64.deb

Docker Desktop tani duhet të shfaqet në listën tuaj të aplikacioneve.

Duke përdorur Docker Desktop

Nisni Docker Desktop nga lëshuesi i aplikacioneve të sistemit tuaj operativ. Ju duhet të shihni ikonën Docker whale të shfaqet në tabaka e sistemit tuaj. Duke klikuar ikonën shfaqet menyja e tabakasë së Docker.

Procesi i inicializimit të ekzekutimit të parë mund të zgjasë disa minuta për të përfunduar. Animacioni i ikonës do të ndalojë dhe linja e statusit në krye të menysë do të ndryshojë në Docker Desktop po funksionon kur Docker të jetë gati për t'u përdorur. Klikoni artikullin Pulti në krye të menysë për të hapur UI-në nëse nuk shfaqet automatikisht.

Do t'ju kërkohet të pranoni kushtet e shërbimit dhe më pas do të çoheni në ekranin e Kontejnerëve. Mund të identifikoheni opsionalisht në Docker Hub duke klikuar butonin Hyrja në shiritin e titullit dhe duke ndjekur udhëzimet.

Provoni të ekzekutoni docker dhe docker compose në terminalin tuaj për të kontrolluar nëse CLI-të janë të disponueshme:

$ docker version
Client: Docker Engine - Community
 Cloud integration: v1.0.29
 Version:           20.10.18
...

$ docker compose version
Docker Compose version v2.10.2

Më pas filloni një kontejner për të verifikuar funksionimin e instalimit tuaj:

$ docker run -d -p 80:80 docker/getting-started

Kontejneri juaj i ri duhet të shfaqet në ndërfaqen e përdoruesit të desktopit Docker. Klikimi i ikonës me tre pika në të djathtë të tabelës zbulon një listë veprimesh që mund të kryeni brenda Docker Desktop, si hapja e një terminali brenda kontejnerit ose vizita e porteve të publikuara në shfletuesin tuaj.

Skeda Imazhet në anën e majtë të ekranit ofron një tabelë të të gjitha imazheve të kontejnerëve të pranishëm në hostin tuaj. Kontrollet janë të disponueshme për të pastruar imazhet e papërdorura, për të nisur shpejt një enë të re nga një imazh dhe për të shtyrë dhe tërhequr imazhet midis regjistrave të ndryshëm.

Mund të merrni më shumë informacion mbi përdorimin e Docker Desktop brenda dokumentacionit. Funksionaliteti mbulon shumë nga komandat e docker CLI ndërsa shtresohet në koncepte të tjera të nivelit më të lartë, si p.sh. Mjediset e Zhvilluesve për ndarjen e kodit të punës në vazhdim.

Aktivizimi i Kubernetes

Docker Desktop ka integruar mbështetjen e Kubernetes, por nuk është aktivizuar si parazgjedhje. Aktivizoni atë duke klikuar ikonën e cilësimeve në shiritin e titullit të aplikacionit dhe më pas duke zgjedhur Kubernetes nga menyja në të majtë.

Kontrolloni kutinë e zgjedhjes Aktivizo Kubernetes dhe shtypni butonin Aplikoni dhe rinisni në fund të djathtë. Mund të duhen disa minuta që Docker të marrë përbërësit e Kubernetes dhe të krijojë grupin tuaj. Një ikonë statusi Kubernetes do të shfaqet në pjesën e poshtme të majtë të aplikacionit, pranë ikonës Docker. Do të bëhet e gjelbër kur Kubernetes të jetë gati për t'u përdorur. Statusi i Kubernetes shfaqet gjithashtu në krye të menysë së tabakasë së Docker Desktop.

Më pas instaloni Kubectl. Ky është CLI i përdorur për të bashkëvepruar me grupin tuaj Kubernetes. Paketa zyrtare Snap është mënyra më e lehtë për ta shtuar atë në Ubuntu:

$ sudo snap install kubectl

Tani provoni të përdorni Kubectl për të hyrë në grupin tuaj:

$ kubectl get nodes
NAME             STATUS   ROLES           AGE   VERSION
docker-desktop   Ready    control-plane   22m   v1.25.0

Nyja docker-desktop shfaqet si Gati që të mund të filloni të krijoni Pods:

$ kubectl run nginx --image nginx:latest
pod/nginx created

Ekspozoni Pod-in tuaj me një shërbim:

$ kubectl expose pod/nginx --port 80 --type NodePort
service/nginx exposed

Tani gjeni portin pritës që i është caktuar shërbimit:

$ kubectl get services
NAME         TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
kubernetes   ClusterIP   10.96.0.1       <none>        443/TCP        23m
nginx        NodePort    10.96.132.212   <none>        80:30107/TCP   75s

Numri i portit është 30107. Përdorni këtë portë për të hyrë në shërbimin tuaj dhe për të marrë faqen e paracaktuar të uljes NGINX:

$ curl http://localhost:30107
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>

Grupi juaj Kubernetes është plotësisht funksional. Do të fillojë automatikisht sa herë që Docker Desktop po funksionon.

Docker Desktop vs Docker Engine

Docker Engine është plotësisht i ndarë nga Docker Desktop. Docker Engine lëshon kontejnerët si procese direkt në hostin tuaj. Ai përdor një shërbim sistemi për të ekzekutuar daemonin Docker. docker CLI synon këtë shembull demon kur lëshoni komanda.

Docker Desktop drejton kontejnerët tuaj brenda një makinerie virtuale QEMU. Nuk duhet të ndërveproni drejtpërdrejt me QEMU pasi krijimi dhe menaxhimi i VM-së trajtohet për ju. Nisja e Docker Desktop fillon automatikisht VM-në; dalja nga aplikacioni do ta mbyllë atë.

Arkitektura VM ishte një domosdoshmëri për ekzekutimin e Docker në sistemet Windows dhe Mac. Ai siguron një mjedis të parashikueshëm për pritjen e kontejnerëve Linux. Ekipi i Docker vendosi të vazhdojë të përdorë VM për Desktop në Linux për të parandaluar mospërputhjet që lindin midis platformave.

Megjithëse VM nuk ndikon në përdorimin e përditshëm të Docker, është një zgjidhje më e rëndë që kërkon më shumë burime sesa Docker Engine. Mund të prisni që VM të konsumojë rreth 2 GB RAM ndërsa është në punë, edhe kur nuk ka kontejnerë. Konsumi i kujtesës së Docker Engine do të ishte i papërfillshëm në të njëjtën situatë.

Kjo do të thotë se Docker Engine mbetet mënyra më e mirë për të ekzekutuar kontejnerët në Linux në mjediset e prodhimit ose kudo ku performanca është kritike. Desktopi është një opsion i shkëlqyeshëm për zhvilluesit që duan të përdorin të njëjtën rrjedhë pune të integruar plotësisht si kolegët në Windows dhe Mac. Desktopi është gjithashtu zgjidhja më e mirë kur dëshironi të përdorni Kubernetes pa shtuar asnjë mjet shtesë. Do t'ju duhet një mjedis i dedikuar Kubernetes si Minikube ose MicroK8s nëse jeni duke përdorur Docker Engine.

Konfigurimi i Desktop's Docker Daemon

Mund të personalizoni konfigurimin e Daemon Docker të përdorur nga Desktop duke klikuar ikonën e cilësimeve në shiritin e titullit dhe duke shkuar te skeda Docker Engine në të majtë të ekranit.

Shkruani ose ngjisni ndryshimet tuaja në hyrjen e dhënë, më pas shtypni Apliko & Rinis në këndin e poshtëm djathtas.

Përshtatja e kufijve të burimeve

Docker Desktop kufizon automatikisht burimet që makina e tij virtuale mund të konsumojë. Parazgjedhjet janë gjysma e numrit total të bërthamave të disponueshme të procesorit, 25% e kujtesës së sistemit tuaj dhe një skedar shkëmbimi 1 GB.

Këto kufizime mund të ndryshohen duke shkuar te ekrani i cilësimeve të Docker Desktop dhe duke klikuar skedën Resources në menynë në të majtë. Përdorni rrëshqitësit për të personalizuar kapakun për çdo burim. Ju mund të ndryshoni madhësinë e diskut virtual të përdorur për të ruajtur të dhënat e VM duke lëvizur poshtë ekranit. Klikoni butonin Aplikoni dhe rinisni në fund të djathtë kur të keni mbaruar.

Përmbledhje

Docker Desktop është një zgjidhje kontejnerizimi e orientuar nga zhvilluesi që kombinon docker CLI me një GUI të gjithanshme dhe mbështetje të integruar Kubernetes. Ardhja e Desktop-it në Linux do të thotë që ekipet e zhvillimit mund të standardizohen në një zinxhir mjetesh të qëndrueshme, pavarësisht nga preferencat e platformës së inxhinierëve individualë.

Docker Desktop shihet më së miri si një alternativë ndaj Docker Engine. Ai siguron mjedisin e vet të kontejnerit, duke përfshirë një motor të virtualizuar Docker dhe një grup të plotë të Docker CLI-ve. Ju nuk mund të përdorni GUI-në e Desktopit me një instalim ekzistues të Docker Engine. Desktopi është më i zbatueshëm për stacionet e punës të zhvilluesve ndërsa Docker Engine duhet të përdoret në serverët e prodhimit ku nuk keni nevojë për një ndërfaqe grafike dhe dëshironi të shmangni shpenzimet e përgjithshme të ekzekutimit të një VM.