1. Umgebung und Vorbereitung
2. Bauprozess 1. Ändern Sie die Spiegelquelle (da die Standardquelle zu langsam ist, ist die inländische Quelle schneller). sudo vim /etc/default/docker Geben Sie die folgenden Parameter ein: DOCKER_OPTS="--registry-mirror=http://hub-mirror.c.163.com" //NetEase, Sie können auch daoClouds verwenden Wenn es sich um eine neu installierte Ubuntu-Umgebung handelt, führen Sie den folgenden Befehl aus (natürlich können Sie auch vi verwenden oder direkt schreiben) sudo apt-get update //Apt-get-Quelle aktualisieren, um Downloadfehler zu vermeiden sudo apt-get install vim -y //Vim herunterladen 2. Starten Sie Docker und ziehen Sie die Registry-Image-Quelle sudo service docker start //Docker starten sudo docker pull registry //Laden Sie das Registrierungsimage herunter 3. Überprüfen Sie nach dem Download, ob der Download erfolgreich war sudo Docker-Bilder 4. Starten Sie nach dem Herunterladen den Container und mounten Sie die Datenzuordnung im Container im von Ihnen angegebenen Verzeichnis. Hier ist /opt/data/registry das auf dem Hostcomputer gespeicherte Verzeichnis. mkdir -p /opt/data/registry //Verzeichnis erstellen sudo docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry --name private_registry registry // Container starten -d: Container im Hintergrund laufen lassen -p: Mapping-Port angeben (ersterer ist die Portnummer des Host-Rechners, letzterer die Portnummer des Containers) -v: Datenmount (ersteres ist das Hostverzeichnis, letzteres ist das Containerverzeichnis) --name: Geben Sie dem laufenden Container einen Namen Überprüfen Sie anschließend, ob der Container erfolgreich gestartet wurde. sudo docker ps 5. Überprüfen Sie die IP-Adresse des Hostcomputers
6. Ändern Sie die Docker-Konfigurationsdatei und fügen Sie Ihre eigene private Bibliotheksadresse hinzu. Beim Start von Docker wird /etc/init/docker.conf geladen. Nach dem Lesen der Konfigurationsdatei wird festgestellt, dass die Datei /etc/default/docker geladen wird. Sie müssen also nur die private Bibliotheksadresse in /etc/default/docker schreiben. sudo vim /etc/default/docker Ändern Sie DOCKER_OPTS wie folgt: DOCKER_OPTS="--registry-mirror=http://hub-mirror.c.163.com --insecure-registry 192.168.147.129:5000" **Port 5000 muss hinzugefügt werden. Der Hostcomputer greift standardmäßig auf Port 80 zu. Wenn Sie ihn nicht hinzufügen möchten, können Sie beim Starten des Containers Port 5000 des Containers auf Port 80 des Hostcomputers abbilden. Nach der Änderung den Container neu starten und den Registrierungsdienst starten sudo service docker restart //Starten Sie den Container neu sudo docker start private_registry //Starten Sie den Registrierungsdienst neu Mit den oben genannten fünf Schritten haben Sie eine private Bibliothek aufgebaut. 3. Testen 1. Ziehen Sie ein Bild und taggen Sie es (am Beispiel von busybox, da busybox relativ klein ist) sudo docker pull busybox:latest // Rufe das Image ab sudo docker tag busybox:latest 192.168.147.129:5000/busybox 2. Senden Sie das Tag-Bild an Ihr lokales Bild-Repository sudo docker push 192.168.147.129:5000/busybox 3. Löschen Sie alle Busybox-Bilder und überprüfen Sie sudo docker rmi busybox 192.168.147.129:5000/busybox //Das Busybox-Image löschen sudo docker images //Überprüfen, ob Informationen zum Busybox-Image vorhanden sind 4. Ziehen Sie das Busybox-Bild aus dem lokalen Bildrepository und zeigen Sie es an sudo docker pull 192.168.147.129:5000/busybox sudo docker images //Informationen zum Image 192.168.147.129:5000/busybox anzeigen Das Obige zeigt an, dass der Pull erfolgreich war. IV. Reflexion und Verbesserung 1. Auf die oben genannten lokalen Lager kann zugegriffen werden, solange sie sich im selben Netzwerk befinden 2. Es lohnt sich, darüber nachzudenken, wie man lokale Lager bequemer verwalten kann 3. Die oben genannten Methoden führen keine Identitätsauthentifizierung durch. Daher lohnt es sich auch zu überlegen, wie die Identitätsauthentifizierung durchgeführt werden soll. Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: Analyse des neuen Ressourcenmanagementsystems von CocosCreator
>>: Details zur Verwendung des JSON-Typs in MySQL 5.7
1. Erklärung von provide und inject Mit „Bereitst...
Was ist HTTP? Wenn wir eine Website durchsuchen m...
1. Vorbereitung des Installationspakets VMware-pl...
Wenn wir CSS-Webseitenlayouts erstellen, wissen wi...
1. Schreiben Sie ein Split-Skript (splitNginxLog....
Was ist ein Baum im Webdesign? Einfach ausgedrückt...
Ich habe vor Kurzem angefangen, das NestJs-Framew...
Inhaltsverzeichnis Zwei Hauptkategorien von Funkt...
Inhaltsverzeichnis 1. Vererbung der Prototypkette...
Inhaltsverzeichnis 1. Was ist scrapy_splash? 2. D...
Wir sollten besser aufpassen, denn die HTML-Poliz...
Hauptunterschiede: 1. Typ SQL-Datenbanken werden ...
Inhaltsverzeichnis 01 Gemeinsame Controller in k8...
Fügen Sie in der Datei /etc/my.conf unter [mysqld...
Verwendung: Datum [Optionen]... [+Format] oder: D...