Situatie
Docker este cel mai iubit instrument de programare, conform sondajului Stack Overflow 2022 și 2023 pentru dezvoltatori. Acesta este utilizat pe scară largă în domeniul IT și a revoluționat modul în care implementăm aplicații.
Containerele Docker sunt un pic asemănătoare mașinilor virtuale, dar sunt mai ușoare și vin ambalate doar cu elementele de bază necesare unui sistem de operare. Pentru a aprecia cât de minime pot fi containerele Docker, haideți să vedem cum puteți rula Ubuntu în Docker.
Solutie
Pasi de urmat
Obținerea imaginii Docker Ubuntu
Dacă nu aveți Docker instalat, urmați ghidul nostru privind instalarea Docker pe Ubuntu. Și, desigur, puteți instala Docker și pe macOS și Windows.
Docker Hub este depozitul recomandat pentru a obține imagini Docker oficiale și verificate public. De asemenea, puteți utiliza Docker Hub pentru a gestiona și a crea imagini Docker private. Furnizorii de cloud precum Azure și AWS oferă, de asemenea, depozite Docker unde puteți găzdui și gestiona imaginile Docker personalizate.
Puteți descărca cea mai recentă imagine Docker Ubuntu utilizând următoarea comandă:
sudo docker pull ubuntu
Docker va descărca cea mai recentă imagine pe PC-ul dvs. dacă nu o aveți deja stocată local.
Dacă sunteți interesat de o versiune specifică, uitați-vă pur și simplu la etichetele disponibile ale imaginii în Docker Hub și apoi descărcați-o folosind eticheta specifică. De exemplu, pentru a descărca Ubuntu 20.04, executați:
sudo docker pull ubuntu:20.04
Puteți lista toate imaginile Docker de pe PC-ul dvs. utilizând comanda sudo docker images.
Rularea imaginii Docker Ubuntu
O imagine Docker este pur și simplu o schiță de instrucțiuni pentru construirea unui container. Un container este o instanță de execuție a unei imagini Docker. Pentru a da viață imaginii Docker Ubuntu pe care tocmai ați descărcat-o, executați următoarea comandă:
sudo docker run -ti –rm ubuntu /bin/bash
Această comandă îi spune lui Docker să ruleze containerul Docker Ubuntu într-un mod terminal interactiv (-ti). Argumentul /bin/bash este o modalitate de a indica containerului să ruleze terminalul shell Bash. În cele din urmă, flagul –rm instruiește Docker să elimine automat containerul Docker Ubuntu după ce îl oprim.
Shell-ul pornește ca utilizator root, iar terminalul este similar cu cel pe care îl aveți pe un sistem Linux obișnuit. În mod implicit, containerul primește un nume de gazdă aleatoriu.
Veți observa, de asemenea, că imaginea nu are o interfață grafică sau multe alte instrumente standard de linie de comandă care vin cu Ubuntu. Imaginea Ubuntu Docker are doar aproximativ 78 MB, ceea ce este foarte ușor.
Rularea comenzilor Linux pe Ubuntu Docker
În mod normal, verificați informațiile sistemului de operare pe Linux utilizând comanda lsb_release -a, dar în acest caz, veți constata că această comandă nu este disponibilă deoarece imaginea Docker Ubuntu nu are pachetul lsb-core instalat în mod implicit. Rețineți, imaginile Docker vin doar cu elementele de bază și nimic altceva.
Din fericire, putem verifica informațiile despre sistemul de operare folosind comanda cat, care vine ca parte a shell-ului Bash.
cat /etc/os-release
După cum puteți vedea din ieșire, aceasta este versiunea LTS a Ubuntu lansată în 2022. Datorită puterii Docker, putem rula Ubuntu în Docker folosind resurse de sistem foarte minime.
Și deoarece acesta este pur și simplu un sistem de operare ușor, putem instala aplicațiile de care avem nevoie folosind comenzile familiare Ubuntu. În primul rând, actualizați sursele pachetelor și instalați lsb-core tastând:
apt update && apt install lsb-core
Odată instalată, puteți rula comanda lsb_release -a și de data aceasta veți obține niște rezultate.
Comanda anterioară listează toate containerele Docker de pe PC-ul dvs. Imaginea Ubuntu din rezultatul de mai sus are ID-ul 524aa76baafb, al dvs. va fi unul diferit.
Salvați starea containerului executând următoarea comandă:
docker commit -p container_id new_container_name
Nu uitați să înlocuiți container_id în următoarea comandă cu cel corect. De asemenea, numele imaginilor Docker pot fi doar cu minuscule.
sudo docker commit -p 524aa76baafb myubuntu
Comanda anterioară va întrerupe containerul înainte de a-l salva și va crea o nouă imagine Docker numită myubuntu. Noua imagine Docker va conține toate modificările pe care i le-ați făcut. Și cu asta, tocmai ați creat o imagine Docker Ubuntu personalizată.
Listați-vă imaginile Docker utilizând comanda sudo docker images; noua dvs. imagine personalizată ar trebui să fie listată împreună.
Persistența datelor pe containerul Docker Ubuntu
O altă caracteristică puternică a Docker este capacitatea de a persista sau de a partaja date cu mașina gazdă. Există două opțiuni principale: utilizarea volumelor montate sau a volumelor Docker. Docker pledează pentru cea din urmă deoarece este mai bună în comparație cu volumele montate.
Puteți crea un volum Docker oriunde pe PC-ul dumneavoastră. Să îl creăm în directorul home și să îl numim Docker_Share:
sudo mkdir -p Docker_Share
Apoi, opriți containerul Ubuntu folosind următoarea comandă, înlocuind container_id cu ID-ul real al containerului Docker Ubuntu:
sudo docker stop container_id
În cele din urmă, putem rula imaginea Ubuntu Docker pentru a persista datele utilizând directorul Docker_Share folosind comanda de mai jos. Alternativ, puteți crea un fișier docker-compose pentru a porni cu ușurință imaginile Docker.
sudo docker run -ti –rm -v ~/Docker_Share:/data ubuntu /bin/bash
Comanda va porni imaginea Ubuntu și va crea directorul /data în cadrul containerului Docker. Directorul /data este mapat la folderul Docker_Share creat anterior.
Puteți accesa orice fișier creat sau modificat din directorul /data al containerului utilizând directorul Docker_Share. Reciproca este de asemenea valabilă; Docker va replica orice modificare de fișier din directorul Docker_Share în directorul /data al containerului.
Docker este un înlocuitor excelent pentru mașinile virtuale
Docker este o tehnologie foarte puternică care vă permite să implementați și să executați aplicații într-un mediu sigur și securizat. De exemplu, o puteți utiliza pentru o gamă largă de sarcini și, în majoritatea cazurilor, vă va fi bine să rulați un container Ubuntu Docker ușor în loc să rulați o mașină virtuală.
Leave A Comment?