Tutorial Docker pentru începători
În tutorialul nostru Docker, vă prezentăm platforma de virtualizare Docker și vă arătăm cum să utilizați Docker pe sistemul Ubuntu 22.04 folosind instrucțiuni ușor de urmat.
Structura și caracteristicile Docker
„Construiește, livrează și rulează orice aplicație, oriunde” – acesta este motto-ul Docker. Platforma open-source de containere oferă o alternativă flexibilă, cu consum redus de resurse, pentru emularea componentelor hardware bazate pe mașini virtuale (VM).
În timp ce virtualizarea hardware tradițională se bazează pe lansarea mai multor sisteme guest pe un sistem gazdă comun, aplicațiile Docker sunt rulate ca procese izolate pe același sistem cu ajutorul containerelor. Aceasta se numește virtualizare bazată pe containere, denumită și virtualizare la nivel de sistem de operare.

Un mare avantaj al virtualizării bazate pe containere este faptul că aplicațiile cu cerințe diferite pot rula izolat unele de altele, fără a necesita costurile suplimentare ale unui sistem guest separat. În plus, cu ajutorul containerelor, aplicațiile pot fi implementate pe diferite platforme și în diferite infrastructuri, fără a fi necesară adaptarea la configurațiile hardware sau software ale sistemului gazdă.
Docker este cel mai popular proiect software care oferă utilizatorilor tehnologie de virtualizare bazată pe containere. Platforma open-source se bazează pe trei componente de bază. Pentru a executa containere, utilizatorii au nevoie doar de motorul Docker, precum și de imagini Docker speciale, care pot fi obținute prin intermediul hub-ului Docker sau create de ei înșiși.
Imagini Docker
Similar mașinilor virtuale, containerele Docker se bazează pe imagini Docker. O imagine este un șablon numai pentru citire care conține toate instrucțiunile de care motorul Docker are nevoie pentru a crea un container. O imagine Docker este descrisă ca o imagine portabilă a unui container sub forma unui fișier text, numit și Dockerfile. Dacă un container trebuie lansat pe un sistem, atunci mai întâi se încarcă un pachet cu imaginea respectivă, atâta timp cât aceasta nu există local. Imaginea încărcată furnizează sistemul de fișiere necesar, inclusiv toți parametrii pentru timpul de rulare. Un container poate fi privit ca un proces de rulare a unei imagini.
Hubul Docker
Docker Hub este un registru bazat pe cloud pentru depozite de software, un tip de bibliotecă pentru imagini Docker. Serviciul online este împărțit între o secțiune publică și una privată. Secțiunea publică oferă utilizatorilor opțiunea de a încărca propriile imagini dezvoltate și de a le partaja cu comunitatea. Aici sunt disponibile o serie de imagini oficiale de la echipa de dezvoltatori Docker și proiecte open-source consacrate. Imaginile încărcate în secțiunea privată a registrului nu sunt accesibile publicului și pot fi partajate, de exemplu, în cadrul cercului intern al unei companii sau cu prietenii sau cunoștințele. Docker Hub poate fi accesat la hub.docker.com.
Motorul Docker
La baza proiectului Docker se află motorul Docker. Acesta este o aplicație client-server open-source, disponibilă tuturor utilizatorilor în versiunea actuală pe toate platformele consacrate.
Arhitectura de bază a motorului Docker este împărțită în trei componente: un demon cu funcții de server, o interfață de programare (API) bazată pe paradigma de programare REST (Representational State Transfer) și terminalul sistemului de operare (interfață de linie de comandă, CLI) ca interfață de utilizator (client).
- Daemon Docker: Ca server pentru motorul Docker, se utilizează un proces daemon. Daemonul Docker rulează în fundalul sistemului gazdă și este utilizat pentru controlul central al motorului Docker. Această funcție creează și gestionează toate imaginile, containerele sau rețelele.
- REST-API: REST-API specifică un set de interfețe care permit altor programe să comunice cu daemonul Docker și să îi dea instrucțiuni. Unul dintre aceste programe este terminalul sistemului de operare.
- Terminal: Ca program client, Docker utilizează terminalul sistemului de operare. Acesta, integrat cu daemonul Docker prin intermediul REST-API, permite utilizatorilor să îl controleze prin scripturi sau introducerea de date de către utilizator.
În 2017, motorul Docker a fost redenumit Docker Community Edition (prescurtat Docker CE), dar documentația oficială și depozitele Docker utilizează în continuare, în mare parte, vechiul nume. Pe lângă Docker CE, există și Docker Enterprise Edition (Docker EE), care are câteva funcții premium. Totuși, acesta nu este gratuit și este mai potrivit pentru întreprinderi.
Cu ajutorul comenzilor Docker, containerele software ale utilizatorilor pot fi pornite, oprite și gestionate direct din terminal. Daemonul este adresat prin comanda docker și instrucțiuni precum build, pull sau run. Clientul și serverul pot fi pe același sistem. Utilizatorii au, de asemenea, opțiunea de a accesa un daemon Docker pe un alt sistem. În funcție de tipul conexiunii stabilite, comunicarea între client și server are loc prin REST-API, prin socluri UNIX sau printr-o interfață de rețea.
Graficul următor ilustrează interacțiunea dintre componentele individuale Docker cu comenzile de exemplu docker build, docker pull și docker run:

Comanda docker build instruiește daemonul Docker să creeze o imagine (linie punctată). Pentru aceasta, trebuie să fie disponibil un fișier Dockerfile corespunzător. Dacă imaginea nu trebuie creată, ci încărcată dintr-un depozit din hub-ul Docker, se utilizează comanda docker pull (linie întreruptă). Dacă daemonul Docker este instruit prin docker run să lanseze un container, programul de fundal verifică dacă imaginea containerului corespunzător este disponibilă local. Dacă este, atunci containerul este rulat (linie continuă). Dacă daemonul nu găsește imaginea, inițiază automat o extragere din depozit.
Lucrul cu Docker
Acum este momentul să vă familiarizați cu aplicațiile platformei container. Dacă nu ați instalat încă motorul Docker, puteți face acest lucru prin intermediul terminalului Linux. Puteți găsi instrucțiuni despre cum să faceți acest lucru în articolul nostru intitulat„Instalarea Docker pe Ubuntu 22.04”. Aflați mai jos cum să controlați motorul Docker din terminal, ce poate face Docker Hub pentru dvs. și de ce containerele Docker ar putea revoluționa modul în care lucrați cu aplicațiile.
Cum să controlați motorul Docker
Începând cu versiunea 16.04, Ubuntu utilizează programul de fundal systemd(prescurtarea de la „system daemon”) pentru a gestiona procesele.Systemd esteun proces init, utilizat și în alte distribuții Linux, precum RHEL, CentOS sau Fedora. De obicei,systemd primeșteID-ul de proces 1. Fiind primul proces al sistemului, daemonul este responsabil pentru pornirea, monitorizarea și terminarea tuturor proceselor următoare. Pentru versiunile anterioare de Ubuntu (14.10 și mai vechi),programul de fundal upstart preia această funcție.
Daemonul Docker poate fi controlat și prin intermediul systemd. În instalarea standard, platforma containerului este configurată astfel încât Daemonul să pornească automat la pornirea sistemului. Această setare implicită poate fi personalizată prin intermediul instrumentului de linie de comandă systemctl.
Cu systemctl, trimiteți comenzi către systemd pentru a controla un proces sau pentru a solicita starea acestuia. Sintaxa unei astfel de comenzi este următoarea:
systemctl [OPTION] [COMMAND]bashUnele comenzi se referă la resurse specifice (de exemplu, Docker). În terminologia systemd, acestea sunt denumite unități. În acest caz, comanda rezultă din instrucțiunea respectivă și numele unității care trebuie adresată.
Dacă doriți să activați pornirea automată a demonului Docker (activați) sau să o dezactivați (dezactivați), utilizați instrumentul de linie de comandă systemctl cu următoarele comenzi:
sudo systemctl enable docker
sudo systemctl disable dockerbashInstrumentul de linie de comandă systemctl vă permite să interogați starea unei unități:
sudo systemctl status dockerbashDacă motorul Docker de pe sistemul Ubuntu este activ, atunci ieșirea din terminal ar trebui să arate ca în următoarea captură de ecran:

Dacă motorul Docker este dezactivat în prezent, veți primi declarația de stare inactiv (mort). În acest caz, trebuie să lansați manual daemonul Docker pentru a rula containerele.

Dacă doriți să porniți, opriți sau reporniți manual motorul Docker, adresați-vă systemd cu una dintre următoarele comenzi.
Pentru a porni demonul dezactivat, utilizați systemctl în combinație cu comanda start:
sudo systemctl start dockerbashDacă doriți să opriți daemonul Docker, utilizați comanda stop:
sudo systemctl stop dockerbashRepornirea motorului este solicitată cu comanda restart:
sudo systemctl restart dockerbashCum se utilizează Docker Hub
Dacă motorul Docker reprezintă inima platformei de containere, atunci hub-ul Docker este sufletul proiectului open-source. Aici se întâlnește comunitatea. În registrul bazat pe cloud, utilizatorii pot găsi tot ce au nevoie pentru a da viață instalării Docker.
Serviciul online oferă diverse depozite oficiale cu peste 100.000 de aplicații gratuite. Utilizatorii au opțiunea de a crea o arhivă de imagini și de a le utiliza colectiv cu grupuri de lucru. În plus față de asistența profesională oferită de echipa de dezvoltare, începătorii pot găsi aici conexiuni cu comunitatea de utilizatori. Un forum pentru asistență comunitară este disponibil pe GitHub.

Înregistrarea în Docker Hub
Înregistrarea în Docker Hub este gratuită. Utilizatorii au nevoie doar de o adresă de e-mail și de ID-ul Docker ales. Acesta servește ulterior ca spațiu de stocare personal și le oferă utilizatorilor acces la toate serviciile Docker. În prezent, această ofertă include Docker Cloud, Docker Store și anumite programe beta, pe lângă Docker Hub. De asemenea, permite utilizarea ID-ului Docker pentru conectarea la centrul de asistență Docker, precum și la portalul Docker Success și la forumul Docker.
Procesul de înregistrare cuprinde cinci etape:
- Alegeți ID-ul Docker: Ca primă parte a aplicației, alegeți un nume de utilizator care va fi folosit ulterior ca ID personal Docker.
- Introduceți o adresă de e-mail: Introduceți adresa dvs. de e-mail actuală. Rețineți că va trebui să confirmați înregistrarea la Docker Hub prin e-mail.
- Alegeți o parolă: Alegeți o parolă secretă.
- Trimiteți înregistrarea: faceți clic pe „Înregistrare” pentru a trimite înregistrarea. Odată ce datele au fost transmise în întregime, Docker vă va trimite un link pentru a vă verifica adresa de e-mail în căsuța de e-mail specificată.
- Confirmați adresa de e-mail: confirmați adresa de e-mail făcând clic pe linkul de verificare.
Serviciile online ale proiectului Docker sunt disponibile imediat după înregistrarea în browser. Aici puteți crea depozite și grupuri de lucru sau puteți căuta resurse publice în Docker Hub folosind opțiunea „Explore”.

De asemenea, vă puteți înregistra direct pe terminalul sistemului de operare prin intermediul comenzii docker login. O descriere detaliată a comenzii poate fi găsită în documentația Docker.
În principiu, Docker Hub este disponibil și pentru cei care nu au un cont sau un ID Docker. În acest caz, însă, pot fi încărcate numai imagini din depozite publice. Încărcarea (push) propriilor imagini nu este posibilă fără un ID Docker.
Creați depozite în hub-ul Docker
Contul gratuit Docker Hub conține un singur depozit privat și oferă posibilitatea de a crea un număr nelimitat de depozite publice. Dacă aveți nevoie de mai multe depozite private, le puteți debloca cu un upgrade plătit.
Pentru a crea un depozit, procedați după cum urmează:
- Alegeți un spațiu de nume: depozitele nou create sunt atribuite automat spațiului de nume al ID-ului dvs. Docker. Aveți, de asemenea, opțiunea de a introduce ID-ul unei organizații din care faceți parte.
- Etichetați depozitul: introduceți un nume pentru depozitul nou creat.
- Adăugați o descriere: Adăugați o scurtă descriere pentru depozitul dvs.
- Setați vizibilitatea: decideți dacă depozitul trebuie să fie vizibil public (public) sau accesibil numai dvs. sau organizației dvs. (privat).
Confirmați datele introduse făcând clic pe „Creați”.

Creați echipe și organizații
Cu ajutorul hub-ului, Docker oferă o platformă bazată pe cloud pe care imaginile create de utilizatori sunt gestionate centralizat și partajate în mod convenabil cu grupurile de lucru. În terminologia Docker, acestea sunt denumite organizații. La fel ca și conturile de utilizator, organizațiile primesc ID-uri individuale prin intermediul cărora imaginile pot fi furnizate și descărcate. Drepturile și rolurile în cadrul unei organizații pot fi atribuite prin intermediul echipelor. De exemplu, utilizatorii atribuiți echipei „Proprietari” au autoritatea de a crea depozite private sau publice și de a atribui drepturi de acces.
Grupurile de lucru pot fi create și gestionate direct prin intermediul tabloului de bord. Informații suplimentare despre organizații și echipe pot fi găsite în documentația Docker.
Lucrul cu imagini și containere
Fiind primul punct de contact pentru resursele oficiale Docker, hub-ul Docker este punctul nostru de plecare pentru această introducere în gestionarea imaginilor și containerelor. Echipa de dezvoltatori a furnizat imaginea demo whalesay, care va servi drept bază pentru următorul tutorial Docker.
Descărcați imagini Docker
Imaginea whalesay poate fi găsită accesând site-ul web Docker Hub și introducând termenul whalesay în bara de căutare de lângă logo-ul Docker.

În rezultatele căutării, faceți clic pe resursa cu titlul docker/whalesay pentru a accesa depozitul public pentru această imagine.
Repozitoarele Docker sunt întotdeauna construite după același model. În antetul paginii, utilizatorii găsesc titlul imaginii, categoria repozitoriului și ora ultimei încărcări (ultima actualizare).

Fiecare depozit Docker oferă, de asemenea, următoarele casete informative:
- Descriere: Descriere detaliată, care include de obicei instrucțiuni de utilizare
- Comanda Docker pull: Comandă utilizată pentru descărcarea imaginii din depozit (
pull) - Proprietar: Informații despre creatorul depozitului
- Comentarii: secțiunea de comentarii de la sfârșitul paginii
Casetele informative ale depozitului arată că whalesay este o modificare a scriptului Perl open-source cowsay. Programul, dezvoltat de Tony Monroe în 1999, generează o grafică ASCII sub forma unei vaci, care apare împreună cu un mesaj în terminalul utilizatorului.
Pentru a descărca docker/whalesay, utilizați comanda docker pull:
docker pull [OPTIONS] NAME [:TAG|@DIGEST]bashComanda docker pull instruiește daemonul să încarce o imagine din depozit. Specificați care este imaginea introducând titlul imaginii (NAME). De asemenea, puteți instrui Docker cu privire la modul în care trebuie executată comanda dorită (OPTIONS). Intrările opționale includ etichete (:TAG) și numere de identificare individuale (@DIGEST), care vă permit să descărcați o versiune specifică a unei imagini.
O copie locală a imaginii docker/whalesay se obține cu următoarea comandă:
docker pull docker/whalesaybashÎn general, puteți sări peste acest pas. Dacă doriți să lansați un container, daemonul Docker descarcă automat imaginile din depozit pe care nu le găsește în sistemul local.
Lansați imagini Docker ca containere
Pentru a porni o imagine Docker, utilizați comanda docker run:
docker run [OPTIONS] IMAGE [:TAG|@DIGEST] [CMD] [ARG...]bashSingura parte obligatorie a comenzii docker run este numele imaginii Docker dorite. Dar când lansezi un container, ai și posibilitatea de a defini opțiuni suplimentare, TAG-uri și DIGEST-uri. În plus, comanda docker run poate fi combinată cu alte comenzi care sunt executate imediat ce containerul pornește. În acest caz, CMD (COMMAND, definit de creatorul imaginii și executat automat la pornirea containerului) este suprascris. Alte configurații opționale pot fi definite prin argumente suplimentare (ARG…). Acest lucru face posibilă, de exemplu, adăugarea de utilizatori sau transferul variabilelor de mediu.
Utilizați directiva liniei de comandă
docker run docker/whalesay cowsay boobashpentru a descărca scriptul Perl existent ca imagine și a-l rula într-un container. Veți observa că whalesay diferă semnificativ de scriptul sursă.

Dacă se execută imaginea docker/whalesay, scriptul afișează o imagine ASCII sub forma unei balene, precum și mesajul text „boo”, transmis cu comanda cowsay în terminal.
La fel ca în cazul testului, daemonul caută mai întâi imaginea dorită în directorul local de fișiere. Deoarece nu există niciun pachet cu același nume, se inițiază o extragere din depozitul Docker. Apoi, daemonul pornește programul cowsay modificat. Dacă acesta a fost executat, containerul se închide automat.
La fel ca cowsay, whalesay de la Docker oferă și opțiunea de a interveni în secvența programului pentru a influența textul afișat în terminal. Testați această funcție înlocuind „boo” din comanda de afișare cu orice șir de caractere sau cu o glumă proastă despre balene, de exemplu.
sudo docker run docker/whalesay cowsay What did the shark say to the whale? What are you blubbering about?bash
Afișează toate imaginile Docker pe sistemul local
Dacă nu sunteți sigur dacă ați descărcat deja o anumită imagine, puteți accesa o prezentare generală a tuturor imaginilor din sistemul dvs. local. Utilizați următoarea directivă de linie de comandă:
sudo docker imagebashComanda docker images (alternativa docker image ls) afișează toate imaginile locale, inclusiv dimensiunea fișierului, eticheta și ID-ul imaginii.

Dacă porniți un container, imaginea de bază este descărcată ca o copie din depozit și stocată permanent pe computerul dvs. Acest lucru vă economisește timp dacă doriți să accesați imaginea ulterior. O nouă descărcare este inițiată numai dacă sursa imaginii se modifică, de exemplu, dacă o versiune actuală este disponibilă în depozit.
Afișează toate containerele din sistemul local
Dacă doriți să afișați o prezentare generală a tuturor containerelor care rulează pe sistemul dvs. sau care au fost rulate în trecut, utilizați directiva docker ps din linia de comandă împreună cu opțiunea --all (prescurtare: -a):
sudo docker ps -abash
Ieșirea terminalului conține informații precum ID-ul containerului respectiv, imaginea de bază, comanda executată la pornirea containerului, ora la care a fost pornit containerul și starea acestuia.
Dacă doriți să afișați numai containerele care rulează în prezent pe sistemul dvs., utilizați directiva docker ps din linia de comandă fără alte opțiuni:
sudo docker psbashÎn prezent, însă, nu ar trebui să existe containere care rulează pe sistemul dvs.
Creați imagini Docker
Tutorialul nostru Docker v-a arătat cum să găsiți imagini în Docker Hub, să le descărcați și să le rulați pe orice sistem pe care este instalat motorul Docker. Dar cu Docker, nu veți putea accesa doar gama extinsă de aplicații disponibile în registru. Platforma oferă, de asemenea, o gamă largă de opțiuni pentru a crea propriile imagini și a le partaja cu alți dezvoltatori.
În capitolele introductive ale acestui tutorial Docker, ați învățat deja că fiecare imagine Docker se bazează pe un fișier Dockerfile. Vă puteți imagina fișierele Dockerfile ca un fel de șablon de construire pentru imagini. Acestea sunt fișiere text simple care conțin toate instrucțiunile de care Docker are nevoie pentru a crea o imagine. În pașii următori, veți învăța cum să scrieți acest tip de fișier Dockerfile și să instruiți Docker să îl utilizeze ca bază pentru propria imagine.
- Creați un director nou: Echipa de dezvoltatori Docker recomandă crearea unui director nou pentru fiecare fișier Dockerfile. Directorii se creează ușor în Linux, în terminal. Utilizați următoarea comandă pentru a crea un director cu numele mydockerbuild:
mkdir mydockerbuildbash
- Navigați în noul director: Utilizați comanda
cdpentru a naviga în directorul de lucru nou creat.
cd mydockerbuildbash
- Creați un fișier text nou: Puteți crea cu ușurință fișiere text și prin terminalul Ubuntu. Pentru aceasta, utilizați un editor precum Nano sau Vim. Creați un fișier text cu numele Dockerfile în directorul mydockerbuild.
nano Dockerfilebash
- Scrieți Dockerfile: Fișierul text nou creat servește ca plan de construcție pentru imaginea dezvoltată de dvs. În loc să programați imaginea de la zero, în acest tutorial Docker vom folosi imaginea demo docker/whalesay ca șablon. Aceasta este integrată folosind comanda FROM în fișierul Dockerfile. Folosiți eticheta :latest pentru a face referire la cea mai nouă versiune a imaginii.
FROM docker/whalesay:latestPână acum, docker/whalesay funcționează astfel încât tu îi introduci cuvinte. În terminal, textul exact pe care l-ai introdus este afișat împreună cu comanda de pornire a containerului. Dar ar fi mai interesant dacă scriptul ar genera automat un text nou. Acest lucru se poate realiza, de exemplu, folosind programul fortunes disponibil pe fiecare sistem Linux. Funcția de bază a fortunes este de a genera zicale din prăjituri cu răvașe și aforisme umoristice. Utilizați următoarea comandă pentru a actualiza indexul pachetelor locale curente și pentru a instala fortunes:
RUN apt-get -y update && apt-get install -y fortunesApoi definiți o instrucțiune CMD. Aceasta este executată după comanda RUN, cu excepția cazului în care a fost suprascrisă de apel (docker run image CMD). Utilizați următoarea comandă pentru a rula programul fortunes cu opțiunea -a („Alegeți din toate bazele de date”) și afișați rezultatul prin programul cowsay în terminal:
CMD /usr/games/fortune -a | cowsayFișierul Dockerfile ar trebui să arate astfel:
FROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsayNotă: Comenzile dintr-un fișier Dockerfile sunt întotdeauna scrise cu spațiu simplu și încep întotdeauna cu un cuvânt cheie. Sintaxa de bază nu face diferența între majuscule și minuscule, deci nu contează dacă scrii cu majuscule sau minuscule. Totuși, s-a stabilit o regulă consistentă privind utilizarea majusculelor pentru cuvintele cheie.

- Salvați fișierul text: Salvați intrarea. Dacă utilizați editorul Nano, salvați cu combinația de taste [CTRL] + [O] și confirmați cu [ENTER]. Nano vă afișează mesajul că trei linii au fost scrise în fișierul selectat. Închideți editorul de text cu combinația de taste [CTRL] + [X].
- Creați imaginea ca Dockerfile: Pentru a crea o imagine dintr-un Dockerfile, navigați mai întâi la directorul în care se află fișierul text. Porniți crearea imaginii cu comanda
docker build. Dacă doriți să denumiți individual imaginea sau să îi atribuiți o etichetă, utilizați opțiunea-turmată de combinația dorită de etichetă și tag. Formatul standard estename:tag.
În exemplul actual, trebuie creată o imagine cu numele docker-whale:
docker build -t docker-whale .bashUltima perioadă indică faptul că fișierul Dockerfile subiacent se găsește în directorul selectat. De asemenea, aveți opțiunea de a specifica o cale de fișier sau o adresă URL pentru fișierele sursă.
Procesul de compilare începe imediat ce comanda este confirmată cu [ENTER]. Mai întâi, daemonul Docker verifică dacă are toate fișierele necesare pentru a crea imaginea. În terminologia Docker, acest lucru este rezumat sub termenul „context”.
Apoi, imaginea docker/whalesay cu eticheta :latest se află:
Dacă contextul necesar pentru crearea imaginii există deja în întregime, atunci daemonul Docker pornește șablonul de imagine atașat prin FROM într-un container temporar și trece la următoarea comandă din Dockerfile. În exemplul actual, aceasta este comanda RUN, care determină instalarea programului fortunes.
La sfârșitul fiecărei etape a procesului de creare a imaginii, Docker vă oferă un ID pentru stratul corespunzător creat în etapa respectivă. Aceasta înseamnă că fiecare linie din fișierul Dockerfile subiacent corespunde unui strat al imaginii construite pe acesta.
Când comanda RUN este finalizată, daemonul Docker oprește containerul creat pentru aceasta, îl elimină și pornește un nou container temporar pentru stratul instrucțiunii CMD. La sfârșitul procesului de creare, acest container temporar este, de asemenea, terminat și eliminat. Docker vă oferă ID-ul noii imagini:
Successfully built a8f2048c9ab8
Imaginea nou creată poate fi găsită sub numele docker-whale în prezentarea generală a imaginilor salvate local.
sudo docker imagesbash
Pentru a porni un container din imaginea nou creată, utilizați directiva liniei de comandă sudo docker run în combinație cu numele imaginii:
sudo docker run docker-whalebashDacă imaginea a fost creată corect din Dockerfile, balena ar trebui să vă inspire acum cu cuvinte mai mult sau mai puțin înțelepte. Notă: De fiecare dată când reporniți containerul, se generează o nouă frază.

Etichetați imaginile Docker și încărcați-le în Docker Hub.
Dacă doriți să încărcați imaginea personalizată docker-whale în hub și să o puneți la dispoziția comunității sau unui grup de lucru, trebuie mai întâi să o conectați la un depozit cu același nume din spațiul dvs. personal de nume. În terminologia Docker, acest pas este cunoscut sub numele de etichetare.
Pentru a publica o imagine în Docker Hub, procedați după cum urmează:
- Creați un depozit: Conectați-vă la Docker Hub folosind ID-ul Docker și parola personală și creați un depozit public cu numele docker-whale.

- Determinați ID-ul imaginii: Determinați ID-ul imaginii personalizate docker-whale utilizând directiva liniei de comandă
docker images.

În cazul nostru, ID-ul imaginii este a8f2048c9ab8. Avem nevoie de acesta pentru etichetare în pasul următor.
- Etichetați imaginea: Etichetați imaginea docker-whale utilizând programul de linie de comandă
docker tagconform următoarelor instrucțiuni:
sudo docker tag [Image-ID][Docker-ID]/[Image-Name]:[TAG]bashPentru exemplul actual, directiva liniei de comandă pentru etichetare este:
sudo docker tag a8f2048c9ab8 [Namespace]/docker-whale:latestbashPuteți verifica dacă ați etichetat corect imaginea utilizând prezentarea generală docker images. Numele depozitului ar trebui să includă acum ID-ul dvs. Docker.

- Încărcați imaginea: Pentru a încărca imaginea, trebuie mai întâi să vă conectați la Docker Hub. Acest lucru se poate face folosind comanda
docker login.
sudo docker loginbashTerminalul vă solicită apoi să introduceți numele de utilizator (ID-ul Docker) și parola.

Dacă autentificarea a reușit, utilizați comanda docker push pentru a încărca imaginea în depozitul nou creat.
sudo docker push [Namespace]/docker-whalebashProcesul de încărcare ar trebui să dureze doar câteva secunde. Starea actuală este afișată în terminal.

Conectați-vă la Docker Hub prin browser pentru a vizualiza imaginea încărcată.
![Docker hub: The repository [Namespace]/docker-whale in the detailed view Imagine: Docker hub: The repository [Namespace]/docker-whale in the detailed view](https://guides.uicdn.net/fileadmin/_processed_/5/e/csm_docker-hub-push-result_56530d8ebc.webp)
Dacă doriți să încărcați mai multe imagini pe depozit, utilizați etichete diferite pentru a oferi imaginile în versiuni diferite. De exemplu:
[Namespace]/docker-whale:latest
[Namespace]/docker-whale:version1
[Namespace]/docker-whale:version2O prezentare generală a diferitelor versiuni ale imaginii poate fi găsită în depozitul Docker hub, în fila „Tags” (Etichete).

Imaginile diferitelor proiecte ar trebui însă să fie oferite în depozite separate.
Dacă încărcarea a fost efectuată cu succes, imaginea personalizată va fi disponibilă în depozitul public pentru toți utilizatorii Docker din întreaga lume.
- Testare: Testați succesul încărcării încercând să descărcați imaginea.
Rețineți că versiunea locală a imaginii trebuie mai întâi ștersă pentru a putea descărca o nouă copie cu aceeași etichetă. În caz contrar, Docker va raporta că imaginea dorită există deja în versiunea curentă.

Pentru a șterge imaginea Docker locală, utilizați comanda docker rmi în combinație cu ID-ul imaginii corespunzătoare. Acesta este determinat, ca de obicei, prin docker images. Dacă Docker înregistrează un conflict, de exemplu deoarece un ID de imagine este utilizat în mai multe depozite sau este utilizat într-un container, repetați comanda cu opțiunea --force (-f pe scurt) pentru a forța ștergerea.
sudo docker rmi -f a8f2048c9ab8bash
Afișați din nou o prezentare generală a tuturor imaginilor locale:
sudo docker ImagesbashElementele șterse nu ar mai trebui să apară în ieșirea terminalului. Acum utilizați comanda pull din depozit pentru a descărca o nouă copie a imaginii din Docker Hub.
sudo docker pull [Namespace]/docker-whalebash
Subiecte și tutoriale suplimentare despre Docker
Universul Docker este vast și, de-a lungul timpului, s-a dezvoltat un ecosistem viu din instrumentele Docker. Docker este deosebit de util pentru administratori, mai ales dacă aceștia operează aplicații complexe cu mai multe containere în paralel pe sisteme diferite. Docker oferă diverse funcții pentru orchestrarea clusterelor de acest tip. Puteți găsi mai multe informații despre acest subiect în articolul nostru despre orchestrarea Docker cu Swarm și Compose.
Ghidul digital conține tutoriale suplimentare pentru lucrul cu Docker:
- Configurarea unui depozit Docker
- Volume container Docker
- Docker: Copiere de rezervă și restaurare
- Instalarea și rularea Docker pe un server Linux
- Tutorial Docker Compose
Docker este potrivit pentru diverse scenarii de aplicare. În Ghidul digital puteți găsi următoarele tutoriale:
- Implementarea WordPress în containere Docker
- Rulați un VPN într-un container Docker folosind SoftEther
- Instalarea Nextcloud cu Docker
- Instalarea Portainer sub Docker
- Redis în containere Docker
- Server Valheim Docker
Docker nu este întotdeauna cea mai bună alegere pentru fiecare aplicație. Unul dintre articolele noastre prezintă cele mai populare alternative la Docker. În plus, avem multe articole disponibile care compară Docker cu alte platforme:
- Kubernetes vs. Docker
- Openshift vs. Docker
- Podman vs. Docker