Schritte für Docker zum Erstellen eines eigenen lokalen Image-Repositorys

Schritte für Docker zum Erstellen eines eigenen lokalen Image-Repositorys

1. Umgebung und Vorbereitung

  • 1. Ubuntu 14.04
  • 2.Docker-Umgebung

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

ifconfig

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:
  • So erstellen Sie ein lokales Docker-Image-Warehouse unter einem CentOS7-System
  • Tutorial zum Erstellen eines privaten Image-Repositorys mit Docker
  • So verwenden Sie ein Domestic Image Warehouse für Docker
  • Detaillierte Erläuterung der Verwendung des Alibaba Cloud-Image-Repository zum Erstellen ausländischer Docker-Images
  • Implementierung der Docker-Konfigurationsänderung des Alibaba Cloud-Image-Repository
  • .NETCore Docker implementiert Containerisierung und privates Image-Repository-Management
  • Beispiel für das Einrichten eines privaten Docker-Image-Repository auf einem CentOS 7.2-Server
  • Detaillierte Erklärung zum Erstellen eines privaten Docker-Image-Repositorys basierend auf Harbor
  • So verwenden Sie das Alibaba Cloud-Image-Repository mit Docker
  • So erstellen Sie mit Docker ein privates Image-Repository
  • So verwenden Sie das Docker-Image-Repository

<<:  Analyse des neuen Ressourcenmanagementsystems von CocosCreator

>>:  Details zur Verwendung des JSON-Typs in MySQL 5.7

Artikel empfehlen

So implementieren Sie die Anpassung des Echats-Diagramms an große Bildschirme

Inhaltsverzeichnis beschreiben erreichen Die Proj...

Praktische TypeScript-Tipps, die Sie vielleicht nicht kennen

Inhaltsverzeichnis Vorwort Funktionsüberladung Zu...

Lassen Sie uns über den Unterschied zwischen MyISAM und InnoDB sprechen

Die Hauptunterschiede sind folgende: 1. MySQL ver...

33 der besten kostenlosen englischen Schriftarten geteilt

ChunkFive Freie Schriftfamilie Cuprum JAH I Kosten...

Sie müssen wahrscheinlich keine Switch-Anweisungen in JavaScript verwenden

Inhaltsverzeichnis Kein Schalter, keine komplexen...

Detailliertes Tutorial zur Installation von PHP und Nginx auf Centos7

Da die Anwendung von CentOS auf der Serverseite i...

HTML-Tabelle_Powernode Java Academy

Um eine Tabelle in HTML zu zeichnen, verwenden Si...

Das WeChat-Applet wählt die Bildsteuerung

In diesem Artikelbeispiel wird der spezifische Co...