Docker 2024 04/Registry: Unterschied zwischen den Versionen

Aus CCWiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Die Standard Registry für Images, [https://hub.docker.com/ 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. {{BSL|localhost}} wird hierbei durch den {{BSL|hostname}} des Servers ersetzt.


Die hier gezeigte Registry bietet keinerlei Verschlüsselung bzw. Authentifizierungsmöglichkeiten. Für weitere Informationen diesbezgülich, siehe [https://www.exoscale.com/syslog/securing-private-docker-registry/ hier]<ref>https://www.exoscale.com/syslog/securing-private-docker-registry/</ref>
Volume für Registry erstellen:
{{BML|code=
{{BML|code=
docker volume create registry
docker volume create registry
}}
}}


Registry mit Volume Mount erstellen, Host Port ist 5050:
{{BML|code=
{{BML|code=
docker run -d -v registry:/var/lib/registry -p 5050:5000 --name registry registry:2
docker run -d -v registry:/var/lib/registry -p 5050:5000 --name registry registry:2
}}
}}


Das Testimage von [[Docker_2024_04/Resource_Restriction#Testimage|hier]] wird verwendet und erhält den Repository Präfix:
{{BML|code=
{{BML|code=
docker tag resource_limiting_base:1.0 localhost:5050/resource_limiting_base:1.0
docker tag resource_limiting_base:1.0 localhost:5050/resource_limiting_base:1.0
}}
}}


Das Image wird in die Registry gepusht:
{{BML|code=
{{BML|code=
docker push localhost:5050/resource_limiting_base:1.0
docker push localhost:5050/resource_limiting_base:1.0
}}
}}


Prüfen des Images:
{{BML|code=
{{BML|code=
docker image prune -a
#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
#Check if image is still locally available
docker image ls
docker image ls
}}
}}


Starten des Images:
{{BML|code=
{{BML|code=
docker run -it --rm localhost:5050/resource_limiting_base:1.0 bash
docker run -it --rm localhost:5050/resource_limiting_base:1.0 bash
}}
}}


Prüfen ob die Images auch wirklich persistent sind:
{{BML|code=
{{BML|code=
#Stop registry
#Stop registry

Aktuelle Version vom 18. April 2024, 10:24 Uhr

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