Docker 2024 04/Registry

Aus CCWiki
Zur Navigation springen Zur Suche springen

Die Standard Registry für Images, dockerhub], es kann jedoch auch eine eigene Image Registry erstellt werden. Im Folgenden wird eine Lokale Registry erstellt. Diese kann natürlich auch über das Netzwerk erreichbar gemacht werden. localhost wird hierbei durch den hostname des Servers ersetzt.

Die hier gezeigte Registry bietet keinerlei Verschlüsselung bzw. Authentifizierungsmöglichkeiten. Für weitere Informationen diesbezgülich, siehe hier[1]

Volume für Registry erstellen:

docker volume create registry

Registry mit Volume Mount erstellen, Host Port ist 5050:

docker run -d -v registry:/var/lib/registry -p 5050:5000 --name registry registry:2

Das Testimage von hier wird verwendet und erhält den Repository Präfix:

docker tag resource_limiting_base:1.0 localhost:5050/resource_limiting_base:1.0

Das Image wird in die Registry gepusht:

docker push localhost:5050/resource_limiting_base:1.0

Prüfen des Images:

#Remove locally stored images
docker image rm resource_limiting_base:1.0
docker image rm localhost:5050/resource_limiting_base:1.0
#Check if image is still locally available
docker image ls

Starten des Images:

docker run -it --rm localhost:5050/resource_limiting_base:1.0 bash

Prüfen ob die Images auch wirklich persistent sind:

#Stop registry
docker container stop registry
#Clear all dangling and images without reference to a container
docker image prune -a
#Check images
docker image ls
#Fails
docker run -it --rm localhost:5050/resource_limiting_base:1.0 bash
#Start registry again
docker run -d -v registry:/var/lib/registry -p 5050:5000 --name registry registry:2
#OK
docker run -it --rm localhost:5050/resource_limiting_base:1.0 bash