Skip to main content

Tag, digest și registru

O imagine construită local poate fi etichetată și publicată într-un registru pentru a fi folosită pe alte sisteme.

Etichetarea imaginii​

Un tag nou nu copiază straturile imaginii, ci creează o altă referință către același conținut.

docker image tag ticketing-api:lab1 ticketing-api:v1
docker image ls ticketing-api

Ambele tag-uri trebuie să indice același image ID.

Digest​

Digest-ul identifică versiunea conținutului printr-un hash. Îl puteți vedea atunci când o imagine este descărcată sau publicată:

docker image ls --digests

Pentru o imagine construită numai local, coloana digest poate conține <none> până când imaginea este asociată cu un registru.

Docker Hub​

Docker Hub este un exemplu de registru public și gratuit Docker, iar mai jos sunt prezentați pașii prin care se poate publica o imagine pe Docker Hub și cum se poate descărca.

  1. Autentificare interactivă:

    docker login
  2. Adăugarea unui tag compatibil cu repository-ul personal:

    docker image tag ticketing-api:lab1 <DOCKERHUB_USERNAME>/ticketing-api:lab1
  3. Publicarea imaginii:

    docker image push <DOCKERHUB_USERNAME>/ticketing-api:lab1
  4. Descărcarea imaginii pe alt sistem:

    docker image pull <DOCKERHUB_USERNAME>/ticketing-api:lab1

Înlocuiți <DOCKERHUB_USERNAME> cu numele real al contului și creați repository-ul în Docker Hub dacă fluxul ales o cere.

Date de autentificare

Nu scrieți parola sau token-ul direct în comandă și nu le salvați în repository. Pentru automatizări se folosesc secretele platformei și intrare prin standard input, nu argumente vizibile în istoricul shell-ului.

Legătură cu laboratoarele următoare​

Repository-ul aplicației conține deja un workflow care testează codul, construiește imaginea și o poate publica în GitHub Container Registry. În acest laborator observăm doar rezultatul; pipeline-ul CI/CD va fi analizat separat.

Checkpoint​

  • tag-ul este o etichetă și poate indica altă imagine în viitor
  • digest-ul identifică un conținut exact
  • registrul distribuie imaginile între medii