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

SQL IDENTITY_INSERT-Fallstudie

Wenn eine Spalte in einer Datentabelle einmal als...

Detaillierte Erklärung zum Kopieren und Sichern von Docker-Containerdaten

Hier nehmen wir den Jenkins-Container als Beispie...

MySQL deaktiviert die Überprüfung der Kennwortstärke

Informationen zur Überprüfung der Kennwortstärke:...

So starten Sie ein Java-Programm im Docker

Erstellen Sie ein einfaches Spring Boot-Webprojek...

...

Zusammenfassung einiger meiner häufig verwendeten Linux-Befehle

Ich habe zwei Jahre lang im Betrieb und in der Wa...

Natives JS zur Realisierung eines einfachen Schlangenspiels

In diesem Artikel wird der spezifische Code von j...

Die Darstellung und Öffnungsmethode eines Hyperlinks

<br />Verwandte Artikel: So rufen Sie einen ...

Welche Arten von MySQL-Verbindungsabfragen kennen Sie?

Vorwort Wenn die Abfrageinformationen aus mehrere...

Detaillierte Erklärung dieses Zeigeproblems in JavaScript

Vorwort Glauben Sie mir, solange Sie sich an die ...