Da immer mehr Docker-Images verwendet werden, muss es einen Ort zum Speichern der Images geben, nämlich das Warehouse. Derzeit werden häufig zwei Arten von Lagern verwendet: öffentliche Lager und private Lager. Am bequemsten ist es, öffentliche Repositorien zum Hoch- und Herunterladen zu verwenden. Sie müssen sich nicht registrieren, um Bilder aus öffentlichen Repositorien herunterzuladen, aber beim Hochladen müssen Sie sich registrieren. Die am häufigsten verwendeten privaten Lager sind Registry und Harbor. Als Nächstes werde ich ausführlich erläutern, wie man ein privates Registry-Lager erstellt. Harbor wird im nächsten Blogbeitrag vorgestellt. 1. Stellen Sie ein privates Registry-Warehouse bereit Fallbeschreibung Zwei CentOS7.4-Maschinen, eine für das private Docker-Repository und die andere für den Docker-Client zum Testen; Beide Server müssen den Docker-Dienst installieren. Weitere Informationen finden Sie im Blogbeitrag: Installieren Sie die Docker.v19-Version 1. Konfigurieren Sie das private Registrierungslager [root@centos01 ~]# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf <!--Routing-Funktion auf Docker-Host aktivieren--> [root@centos01 ~]# sysctl -p <!--Konfiguration aktualisieren--> net.ipv4.ip_forward = 1 [root@centos01 ~]# vim /etc/docker/daemon.json <!--Image-Beschleunigung konfigurieren--> {"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"]} <!--Alibaba Cloud Acceleration hinzufügen--> [root@centos01 ~]# systemctl reload docker <!--Starten Sie den Docker-Dienst neu--> [root@centos01 ~]# Docker-Suche nach Registrierungsabbild <!--Suche nach Registrierungsabbild--> <!--Das Registrierungsabbild kann je nach Situation direkt heruntergeladen werden oder nicht--> [root@centos01 ~]# docker run -d -p 5000:5000 --name registry --restart=always -v /opt/registry:/var/lib/registry registry <!--Führen Sie den Registrierungscontainer aus und führen Sie den Registrierungsdienst aus, um sein eigenes Image zu speichern--> <!--Der Parameter „--restart=always“ bedeutet, dass dieser Container nach dem Start des Docker-Dienstes gestartet wird--> [root@centos01 ~]# docker ps <!--Den von Docker ausgeführten Container anzeigen--> CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN a7773d77b8a3 Registrierung "/entrypoint.sh /etc…" vor 50 Sekunden Aktiv seit 46 Sekunden 0.0.0.0:5000->5000/tcp Registrierung [root@centos01 ~]# Docker-Images <!--Alle Docker-Images anzeigen--> REPOSITORY TAG BILD ID ERSTELLT GRÖSSE Registrierung aktuell 708bc6af7e5e vor 3 Monaten 25,8 MB Tomcat aktuell 1b6b1fe7261e vor 5 Tagen 647 MB hub.c.163.com/public/centos 6.7-tools b2ab0ed558bb vor 3 Jahren 602 MB [root@centos01 ~]# vim /etc/docker/daemon.json <!--Docker-Dienst zur Unterstützung des Registrierungsdienstes konfigurieren--> {"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"], "insecure-registries":["192.168.100.10:5000"] <!--Fügen Sie diese Zeile hinzu--> } [root@centos01 ~]# systemctl reload docker <!--Starten Sie den Docker-Dienst neu--> 2. Laden Sie das Bild in das private Registrierungslager hoch [root@centos01 ~]# Docker-Tag hub.c.163.com/public/centos:6.7-tools 192.168.100.10:5000/image/centos:6.7 <!--Bild-Tag ändern--> [root@centos01 ~]# docker push 192.168.100.10:5000/image/centos:6.7 <!--Laden Sie das Image in das private Lager der Registrierung hoch--> 2. Konfigurieren Sie den Docker-Client für den Zugriff auf das private Repository <!--Docker-Dienst auf dem Client installieren und Image-Beschleunigung konfigurieren--> [root@centos02 ~]# vim /etc/docker/daemon.json <!--Docker zur Unterstützung des Registrierungsdienstes konfigurieren--> {"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"], "insecure-registries":["192.168.100.10:5000"] <!--Fügen Sie diese Zeile hinzu--> } [root@centos02 ~]# systemctl restart docker <!--Docker-Dienst neu starten--> [root@centos02 ~]# Docker Pull 192.168.100.10:5000/Image/centos:6.7 <!--Der Client lädt das Bild im privaten Lager herunter--> [root@centos02 ~]# Docker-Images <!--Überprüfen Sie, ob das Image erfolgreich heruntergeladen wurde--> REPOSITORY TAG BILD ID ERSTELLT GRÖSSE 192.168.100.10:5000/image/centos 6.7 b2ab0ed558bb vor 3 Jahren 602 MB An diesem Punkt wurde das private Lager der Registrierung erstellt, aber jetzt gibt es ein Problem. Wenn dies auch bereitgestellt wird, können alle Mitarbeiter im Unternehmen auf unser privates Lager zugreifen. Aus Sicherheitsgründen fügen wir eine Authentifizierung für die Registrierung hinzu. Erst nach Bestehen der Authentifizierung können Sie das Bild im privaten Lager hoch- oder herunterladen. 3. Konfigurieren Sie die Registrierung zum Laden der Authentifizierung [root@centos01 ~]# yum -y install httpd-tools <!--Verschlüsselungstool httpd-tools installieren--> [root@centos01 ~]# mkdir /opt/registry-auth <!--Ein Verzeichnis zum Speichern der Bestätigungsschlüssel erstellen--> [root@centos01 ~]# htpasswd -Bbn bob pwd@123 > /opt/registry-auth/htpasswd <!--Konfigurieren der Registrierungsauthentifizierungsdatenbank--> <!--"-Bbn" Parametererklärung: B erzwingt die Kennwortverschlüsselung; b gibt das Kennwort im Befehl ein und fordert nicht zur Kennworteingabe auf; n aktualisiert die Schlüsseldatei nicht --> <!--Löschen Sie alle Container auf diesem Server und generieren Sie dann einen neuen privaten Warehouse-Container, der eine Authentifizierung erfordert--> [root@centos01 ~]# docker run -d -p 5000:5000 --restart=always \ -v /opt/registry-auth/:/auth/ \ -v /opt/registry:/var/lib/registry --name registry-auth -e "REGISTRY_AUTH=htpasswd" \ -e "REGISTRY_AUTH_HTPASSWD_REALM=Registrierungsbereich" \ -e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" Registrierung <!--Führen Sie einen privaten Registry-Image-Repository-Container erneut aus, der Authentifizierung unterstützt--> [root@centos01 ~]# Docker-Tag Tomcat:latest 192.168.100.10:5000/image/tomcat:1.0 <!--Spiegeländerungs-Tag--> [root@centos01 ~]# docker push 192.168.100.10:5000/image/tomcat:1.0 <!--Testen Sie, ob Sie ein Bild ohne Identitätsauthentifizierung in ein privates Repository hochladen können--> keine grundlegenden Authentifizierungsdaten <!--Meldet an, dass keine Identitätsüberprüfung erfolgt und der Upload nicht durchgeführt werden kann--> [root@centos01 ~]# Docker-Login 192.168.100.10:5000 <!--Melden Sie sich beim privaten Bild-Repository an und laden Sie das Bild hoch, nachdem Sie die Identitätsauthentifizierung bestanden haben--> Benutzername: bob <!--Geben Sie bob ein--> Passwort: <!--Passwort eingeben--> ……………… <!--Hier wurde ein Teil des Inhalts ausgelassen--> Anmeldung erfolgreich <!--Authentifizierung erfolgreich, jetzt können Sie das Bild in das private Lager hochladen--> [root@centos01 ~]# docker push 192.168.100.10:5000/image/tomcat:1.0 <!--Laden Sie das Image erneut in das private Warehouse hoch--> Der Push bezieht sich auf das Repository [192.168.100.10:5000/image/tomcat] b0ac242ce8d3: Geschoben 5e71d8e4cd3d: Geschoben eb4497d7dab7: Geschoben bfbfe00b44fc: Geschoben d39111fb2602: Gedrückt 155d997ed77c: Geschoben 88cfc2fcd059: Geschoben 760e8d95cf58: Geschoben 7cc1c2d7e744: Geschoben 8c02234b8605: Geschoben 1.0: Digest: sha256:55b41e0290d32d6888aee2e9a15f03cc88d2f49d5ad68892c54b9527d0ed181c Größe: 2421 [root@centos02 ~]# docker pull 192.168.100.10:5000/image/tomcat:1.0 <!--Der Docker-Client wird beim Herunterladen von Bildern aus privaten Repositories ohne Authentifizierung direkt abgelehnt--> Fehlerantwort vom Daemon: Get http://192.168.100.10:5000/v2/image/tomcat/manifests/1.0: keine grundlegenden Authentifizierungsdaten [root@centos02 ~]# Docker-Login 192.168.100.10:5000 <!--Melden Sie sich beim privaten Lager an und bestehen Sie die Identitätsauthentifizierung--> Benutzername: bob <!--Geben Sie bob ein--> Passwort: <!--Passwort eingeben--> Anmeldung erfolgreich <!--Authentifizierung erfolgreich abgeschlossen--> [root@centos02 ~]# docker pull 192.168.100.10:5000/image/tomcat:1.0 <!--Laden Sie das Image im privaten Warehouse herunter--> 1.0: Ziehen von Image/Tomcat 376057ac6fa1: Ziehen abgeschlossen 5a63a0a859d8: Ziehen abgeschlossen 496548a8c952: Ziehen abgeschlossen 2adae3950d4d: Ziehen abgeschlossen 0a297eafb9ac: Pull abgeschlossen 09a4142c5c9d: Ziehen abgeschlossen 9e78d9befa39: Ziehen abgeschlossen 18f492f90b9c: Ziehen abgeschlossen 7834493ec6cd: Ziehen abgeschlossen 216b2be21722: Ziehen abgeschlossen Zusammenfassung: sha256:55b41e0290d32d6888aee2e9a15f03cc88d2f49d5ad68892c54b9527d0ed181c Status: Neueres Image für 192.168.100.10:5000/image/tomcat:1.0 heruntergeladen 192.168.100.10:5000/Bild/Tomcat:1.0 [root@centos02 ~]# Docker-Images <!--Docker-Client-Image anzeigen--> REPOSITORY TAG BILD ID ERSTELLT GRÖSSE 192.168.100.10:5000/image/tomcat 1.0 1b6b1fe7261e vor 5 Tagen 647 MB 192.168.100.10:5000/image/centos 6.7 b2ab0ed558bb vor 3 Jahren 602 MB Dies ist das Ende dieses Artikels über die Implementierung der Bereitstellung von Docker Private Warehouse Registry. Weitere relevante Inhalte zu Docker Private Warehouse Registry finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Zusammenfassung der Methoden zum Abfragen von MySQL-Benutzerberechtigungen
>>: Beispiel zum Anzeigen und Ändern der MySQL-Transaktionsisolationsebene
Wie wir alle wissen, gibt es in Computern zwei Art...
Ich habe drei Stunden gebraucht, um MySQL selbst ...
Hintergrund Als ich heute mit anderen Projektteam...
Manchmal benötigen unsere Seiten Eingabeaufforder...
Methode 1: Verwenden Sie den Befehl SET PASSWORD ...
1. Installationsumgebung 1. HUAWEI Mate X CPU i5 ...
Voraussetzung: Mac, zsh installiert, mysql herunt...
Inhaltsverzeichnis Vorwort 1. Benutzerdefinierter...
1. <select style="width:195px" name=&...
Vorwort Zum Leistungsvergleich zwischen „group by...
Beim Ändern der Zeitzone unter Linux ist es immer...
1. Skip-Grant-Tables zur Datei my.ini hinzufügen ...
Vorwort Aufgrund meines MySQL-Verständnisses denk...
Zum ersten Mal schreiben. Gestatten Sie mir, mich...
Die React-Version beim Schreiben dieses Artikels ...