So erstellen Sie mit Harbor ein privates Docker-Repository

So erstellen Sie mit Harbor ein privates Docker-Repository

1. Open-Source-Lagerverwaltungstool Harbor

Harbor ist ein von CNCF gehostetes Open-Source-Tool zur Verwaltung Docker Image-Repositorys. Wir können es verwenden, um schnell unser eigenes privates Repository zu erstellen. Natürlich gibt es viele Optionen zum Erstellen eines privaten Lagers, z. B. das offiziell von Docker bereitgestellte registry oder Nexus . Aber Harbor ist immer noch eine gute Wahl.

2 Installation

Es gibt viele Möglichkeiten, Harbor zu installieren, z. B. die Installation über die Befehlszeile, Helm Installation usw. Dieser Artikel demonstriert die Skriptinstallation über die Befehlszeile.

2.1 Docker und Docker-Compose installieren

Zuerst muss Docker installiert werden. Harbor wird über eine Reihe von Containern gestartet. Darüber hinaus müssen Sie docker-compose installieren, und es gibt bestimmte Anforderungen an die Version. Hier können Sie das Softwarepaket in der Rancher -Ressourcenbibliothek finden und konfigurieren:

Installieren Sie Docker-compose :

wget http://rancher-mirror.cnrancher.com/docker-compose/v1.27.4/docker-compose-Linux-x86_64
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
chmod a+x /usr/local/bin/docker-compose

2.2 Harbor installieren

2.2.1 Herunterladen und Dekomprimieren

Gehen Sie zunächst zu GitHub Release, um das entsprechende Paket herunterzuladen. Es gibt zwei Typen: offline und online . offline ist größer und enthält die entsprechenden Abhängigkeiten; online enthält nicht die entsprechenden abhängigen Komponenten und muss während der Installation heruntergeladen werden. Hier wird das online Paket verwendet, da das Herunterladen von Dingen von Github möglicherweise nicht sehr schnell ist.

herunterladen:

wget https://github.com/goharbor/harbor/releases/download/v2.1.1/harbor-online-installer-v2.1.1.tgz

Entpacken:

tar zxvf harbor-online-installer-v2.1.1.tgz

2.2.2 Konfiguration und Installation

Bereiten Sie die Konfigurationsdatei vor:

cp harbor.yml.tmpl harbor.yml

Ändern Sie die Konfiguration: vi harbor.yml , entfernen Sie hauptsächlich https und konfigurieren Sie die Serveradresse und das Passwort. Die wichtigsten Konfigurationen sind:

Hostname: 8.134.18.166
http:
  Port: 8088
# https-bezogene Konfiguration
#https:
  # https-Port für Hafen, Standard ist 443
  # Port: 443
  # Der Pfad der Zertifikats- und Schlüsseldateien für nginx
  #Zertifikat: /Ihr/Zertifikat/Pfad
  #private_key: /Ihr/privater/Schlüssel/Pfad
Harbor_Admin_Passwort: Harbor12345

Nachdem Sie die Konfiguration geändert haben, starten Sie die Installation:

./install.sh

Wenn die Installation erfolgreich war, wird eine Eingabeaufforderung angezeigt.

3. Einfach zu bedienen

3.1 Erstellen Sie einen Benutzer mit Administratorrechten

Besuchen Sie: http://8.134.18.166:8088/ , um sich anzumelden. Der Benutzername ist admin und das Standardkennwort ist Harbor12345 .

Der Verwaltungsbenutzer admin hat zu hohe Berechtigungen. So erstellen Sie einen normalen Benutzer:

Benutzerinformationen erstellen:

3.2 Neuer Benutzer erstellt ein Projekt

Beenden Sie admin , melden Sie sich mit dem neu erstellten Benutzer an und erstellen Sie dann ein Projekt zum Speichern des Bildes:

Projekt erfolgreich erstellt:

3.3 Docker-Verbindungslager

3.3.1 Docker-Konfiguration ändern und neu starten

Konfigurieren Sie daemon.json auf einer Maschine mit docker und fügen Sie "insecure-registries": ["http://8.134.18.166:8088"],

vi /etc/docker/daemon.json

Der Inhalt nach der Konfiguration ist wie folgt:

{
  "unsichere Registrierungen": ["http://8.134.18.166:8088"],
  "Registrierungsspiegel": ["https://xxx.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "JSON-Datei",
  "log-opts": {
    "maximale Größe": "100 m"
  },
  "Speichertreiber": "Overlay2"
}

Docker neu starten:

systemctl Neustart Docker

3.3.2 Anmelden und Bild übertragen

Melden Sie sich beim neu erstellten Lager an:

$ Docker-Login http://8.134.18.166:8088 --Benutzername pkslow --Passwort Pk123456
WARNUNG! Die Verwendung von --password über die CLI ist unsicher. Verwenden Sie --password-stdin.
WARNUNG! Ihr Passwort wird unverschlüsselt in /root/.docker/config.json gespeichert.
Konfigurieren Sie einen Credential Helper, um diese Warnung zu entfernen. Siehe
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Anmeldung erfolgreich

tag eines der Bilder:

Docker-Tag nginx 8.134.18.166:8088/pkslow/nginx:latest

Laden Sie das Bild in das Repository hoch:

$ docker push 8.134.18.166:8088/pkslow/nginx:latest
Der Push bezieht sich auf das Repository [8.134.18.166:8088/pkslow/nginx]
cdd1d8ebeb06: Geschoben 
fe08d9d9f185: Geschoben 
280ddd108a0a: Geschoben 
f14cffae5c1a: Geschoben 
d0fe97fa8b8c: Geschoben 
zuletzt: Digest: sha256:4949aa7259aa6f827450207db5ad94cabaa9248277c6d736d5e1975d200c7e43 Größe: 1362

Gehen Sie zur Überprüfung auf die Webseite, es gibt bereits einen entsprechenden Mirror:

Ziehen wird nicht vorgeführt.

Dies ist das Ende dieses Artikels über die Verwendung von Harbor zum Erstellen eines privaten Docker-Repositorys. Weitere Informationen zur Verwendung von Harbor zum Erstellen eines privaten Docker-Repositorys finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Harbor visualisiert eine private Image-Warehouse-Umgebung und ein Beispiel für die Bereitstellung von Diensten
  • Methode zum Erstellen eines privaten Docker-Warehouses basierend auf Harbor
  • Detaillierte Erklärung zum Erstellen eines privaten Docker-Image-Repositorys basierend auf Harbor
  • Einführung in die Hochverfügbarkeitskonfiguration und Lagernutzung von Harbor

<<:  MySQL-Integritätsbeschränkungen – Definition und Beispiel-Tutorial

>>:  Detaillierte Untersuchung der Verwendung der Positionierung in CSS (Zusammenfassung)

Artikel empfehlen

Fallstudie zu MySQL-Berechtigungen und Datenbankdesign

Berechtigungen und Datenbankdesign Benutzerverwal...

Implementierung eines einfachen Timers basierend auf der Vue-Methode

Der einfache Timer von Vue dient Ihnen als Refere...

Gemessenes Bild - HTTP-Anforderung

Bitte öffnen Sie die Testseite in einem gängigen ...

MySQL-Lösung für zeitgesteuerte Backups (mithilfe von Linux crontab)

Vorwort Obwohl manche Liebe auf dieser Welt ihren...

Beispiele für die Verwendung der oder-Anweisung in MySQL

1. Die Verwendung der oder Syntax in MySQL und di...

jQuery benutzerdefinierter Lupeneffekt

In diesem Artikelbeispiel wird der spezifische Co...

Installieren Sie Centos7 mithilfe einer virtuellen Hyper-V-Maschine

Inhaltsverzeichnis einführen Vorbereiten Systemab...

Mac+IDEA+Tomcat-Konfigurationsschritte

Inhaltsverzeichnis 1. Herunterladen 2. Installati...