ÜberblickWas ist Hafen? Das englische Wort bedeutet: Hafen. Der Hafen wird zum Speichern von Containern (Fracht) verwendet, und der Ursprung von Docker basiert auf dem Prinzip der Container, sodass der Hafen zum Speichern von Docker-Images und als Image-Warehouse verwendet wird. Die offizielle Erklärung lautet: Harbor ist ein Registry-Server auf Unternehmensebene zum Speichern und Verteilen von Docker-Images. Das Harbor Image Warehouse ist ein von VMware als Open Source bereitgestelltes Image Warehouse auf Unternehmensebene. Es umfasst zahlreiche Funktionen wie Berechtigungsverwaltung (RBAC), LDAP, Protokollprüfung, Verwaltungsschnittstelle, Selbstregistrierung, Image-Replikation usw. 1. Hafenmerkmale 1. Rollenbasierte Zugriffskontrolle: Benutzer und Repositories werden nach „Projekten“ organisiert und Benutzer können unterschiedliche Berechtigungen für mehrere Image-Repositories im selben Namespace haben. 2. Hafenkomponenten 1. Proxy: Die Komponenten von Harbor, wie etwa die Registrierung, die Benutzeroberfläche und der Token-Dienst, befinden sich alle hinter einem Reverse-Proxy. Der Proxy leitet Anfragen von Browsern und Docker-Clients an verschiedene Backend-Dienste weiter. 3. Bereitstellungsumgebungcentos-7.6 192.168.8.130 Docker-Version 1.19.3 Docker-Compose Version 1.24.2 Harbor-Offline-Installer-v1.8.6.tgz 4. Installieren Sie Docker-ComposeMethode 1: [root@centos130 ~]# curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose [root@centos130 ~]# chmod +x /usr/local/bin/docker-compose Methode 2: [root@centos130 ~]# wget https://bootstrap.pypa.io/get-pip.py [root@centos130 ~]# python get-pip.py [root@centos130 ~]# pip install docker-compose 5. Deinstallieren Sie Docker-Compose#Binär: [root@centos130 ~]rm /usr/local/bin/docker-compose #Pip: [root@centos130 ~]pip deinstallieren Docker-Compose 6. Docker installieren[root@centos130 ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 Fügen Sie eine stabile Quelle hinzu [root@centos130 ~]# yum-config-manager --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo [root@centos130 ~]# yum makecache fast Installieren Sie die neueste stabile Version von docker-ce [root@centos130 ~]# yum install -y docker-ce docker-ce-cli containerd.io vim [root@centos130 ~]# mkdir /etc/docker && vim /etc/docker/daemon.json { "Registrierungsspiegel": ["https://yxrgrke0.mirror.aliyuncs.com"], "unsichere Registrierungen": ["192.168.8.130:5000"], "unsichere Registrierungen": ["centos130:80"], "log-driver": "JSON-Datei", "log-opts": { "max-size": "100m", "max-Datei": "3" } } Starten Sie Docker [root@centos130 ~]# systemctl daemon-reload [root@centos130 ~]# systemctl aktiviere Docker && systemctl starte Docker [root@centos130 ~]# systemctl status docker 7. Installieren Sie den HafenHafen-Download-Adresse: Harbor-GitHub-Adresse https://github.com/goharbor/harbor http://harbor.orientsoft.cn/ [root@centos130 ~]# wget https://storage.googleapis.com/harbor-releases/release-1.8.6/harbor-offline-installer-v1.8.6.tgz [root@centos130 ~]# tar -xf harbor-offline-installer-v1.8.6.tgz -C /usr/local/ [root@centos130 ~]# cd /usr/local/harbour/ [root@centos130 ~]# vim harbor.yml Hostname = centos130 #Dies ist nur ein einfacher Test. Bearbeiten Sie daher nur diese Zeile und lassen Sie die anderen standardmäßig unverändert. #Benutzerregistrierung deaktivieren self_registration = off #Legen Sie fest, dass nur Administratoren Projekte erstellen können project_creation_restriction = adminonly 8. Führen Sie das Installationsskript aus[root@centos130 ~]# ./instsll.sh Beschreibung: Installationsfehler: Docker-Proxy, Docker-Runc können nicht gefunden werden Führen Sie [root@centos130 ~]# ln -s /usr/libexec/docker/docker-runc-current /usr/bin/docker-runc aus. [root@centos130 ~]# ln -s /usr/libexec/docker/docker-proxy-current /usr/bin/docker-proxy Zeigen Sie die gestartete Image-Datei an [root@centos130 ~]# docker-compose ps Stopp und Start von Hafencontainern: [root@centos130 ~]# cd /usr/local/harbour/ [root@centos130 ~]# Docker-Compose-Stopp [root@centos130 ~]# docker-compose starten 9. Melden Sie sich bei Harbor an Die Installation ist nun abgeschlossen. Öffnen Sie den Browser, melden Sie sich direkt an und erstellen Sie mein Projekt: Melden Sie sich über das Shell-Befehlszeilenterminal beim Harbor-Repository an. [root@centos130 ~]# Harbor-Image hochladen [root@centos130 ~]# Docker-Login centos130:80 [root@centos130 ~]# docker login -u admin -p Harbor12345 centos130:80 #Konto und Passwort: admin/Harbor12345 Benutzername: admin Passwort: Anmeldung erfolgreich Testen Sie den Bild-Upload [root@centos130 ~]# Docker zieht nginx [root@centos130 ~]# Docker-Tag nginx:latest centos130:80/my/nginx:latest [root@centos130 ~]# Docker-Bilder [root@centos130 ~]# docker push centos130:80/my/nginx:latest Der Push bezieht sich auf das Repository [centos130:80/my/nginx] 55a77731ed26: Geschoben 71f2244bc14d: Geschoben f2cb0ecef392: Geschoben zuletzt: Digest: sha256:3936fb3946790d711a68c58be93628e43cbca72439079e16d154b5db216b58da Größe: 948 Hinweis: Das Format ist: Benutzer-IP/Projektname/Bildname:Versionsnummer (der Projektname muss vorab in der Web-Benutzeroberfläche erstellt werden). [root@centos130 ~]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE centos130:80/my/nginx:latest latest 5a3221f0137b vor 5 Tagen 126MB nginx latest 5a3221f0137b vor 5 Tagen 126 MB Löschen Sie das lokale Nginx-Image und testen Sie den Download [root@centos130 ~]# docker pull centos130:80/my/nginx:latest 10. Harbor ändert die Portnummer1. Ändern Sie die Zuordnung der Datei docker-compose.yml zu Port 1180: Ändern Sie die Konfigurationsdatei [root@centos130 ~]# cat /usr/local/harbor/docker-compose.yml Version: '2.3' Leistungen: Protokoll: Bild: goharbor/harbor-log:v1.8.6 Containername: Hafenprotokoll Neustart: immer dns_search: . Kappe_Tropfen: - ALLE cap_add: -CHOWN -DAC_OVERRIDE -SETGID -SETUID Bände: – /var/log/hafen/:/var/log/docker/:z - ./common/config/log/:/etc/logrotate.d/:z Häfen: 127.0.0.1:1514:10514 Netzwerke: -Hafen Registrierung: Bild: goharbor/registry-photon:v2.7.1-patch-2819-v1.8.6 Containername: Registrierung Neustart: immer Kappe_Tropfen: - ALLE Cap_Add: (Hinzufügen) -CHOWN -SETGID -SETUID Bände: – /data/registry:/storage:z - ./common/config/registry/:/etc/registry/:z - Typ: binden Quelle: /data/secret/registry/root.crt Ziel: /etc/registry/root.crt Netzwerke: -Hafen dns_suche: . hängt ab von: -Protokoll Protokollierung: Treiber: "syslog" Optionen: Syslog-Adresse: "tcp://127.0.0.1:1514" Schlagwort: "Registrierung" Registrierungsnummer: Bild: goharbor/harbor-registryctl:v1.8.6 Containername: Registryctl Umgebungsdatei: - ./common/config/registryctl/env Neustart: immer Kappe_Tropfen: - ALLE Cap_Add: (Hinzufügen) -CHOWN -SETGID -SETUID Bände: – /data/registry:/storage:z - ./common/config/registry/:/etc/registry/:z - Typ: binden Quelle: ./common/config/registryctl/config.yml Ziel: /etc/registryctl/config.yml Netzwerke: -Hafen dns_suche: . hängt ab von: -Protokoll Protokollierung: Treiber: "syslog" Optionen: Syslog-Adresse: "tcp://127.0.0.1:1514" tag: "registryctl" postgresql: Bild: goharbor/harbor-db:v1.8.6 Containername: Harbor-DB Neustart: immer Kappe_Tropfen: - ALLE Cap_Add: (Hinzufügen) -CHOWN -DAC_OVERRIDE -SETGID -SETUID Bände: – /data/database:/var/lib/postgresql/data:z Netzwerke: Hafen: dns_suche: . Umgebungsdatei: - ./common/config/db/env hängt ab von: -Protokoll Protokollierung: Treiber: "syslog" Optionen: Syslog-Adresse: "tcp://127.0.0.1:1514" Schlagwort: "postgresql" Kern: Bild: goharbor/harbor-core:v1.8.6 Containername: Harbor-Core Umgebungsdatei: - ./common/config/core/env Neustart: immer Kappe_Tropfen: - ALLE Cap_Add: (Hinzufügen) -SETGID -SETUID Bände: – /data/ca_download/:/etc/core/ca/:z - /data/psc/:/etc/core/token/:z – /data/:/data/:z - ./common/config/core/certificates/:/etc/core/certificates/:z - Typ: binden Quelle: ./common/config/core/app.conf Ziel: /etc/core/app.conf - Typ: binden Quelle: /data/secret/core/private_key.pem Ziel: /etc/core/private_key.pem - Typ: binden Quelle: /data/secret/keys/secretkey Ziel: /etc/core/key Netzwerke: Hafen: dns_suche: . hängt ab von: -Protokoll - Registrierung Protokollierung: Treiber: "syslog" Optionen: Syslog-Adresse: "tcp://127.0.0.1:1514" Schlagwort: "Kern" Portal: Bild: goharbor/harbor-portal:v1.8.6 Containername: Hafenportal Neustart: immer Kappe_Tropfen: - ALLE Cap_Add: (Hinzufügen) -CHOWN -SETGID -SETUID -NET_BIND_SERVICE Netzwerke: -Hafen dns_suche: . hängt ab von: -Protokoll -Kern Protokollierung: Treiber: "syslog" Optionen: Syslog-Adresse: "tcp://127.0.0.1:1514" Schlagwort: "Portal" Jobservice: Bild: goharbor/harbor-jobservice:v1.8.6 Containername: Hafen-Jobservice Umgebungsdatei: - ./common/config/jobservice/env Neustart: immer Kappe_Tropfen: - ALLE Cap_Add: (Hinzufügen) -CHOWN -SETGID -SETUID Bände: - /data/job_logs:/var/log/jobs:z - Typ: binden Quelle: ./common/config/jobservice/config.yml Ziel: /etc/jobservice/config.yml Netzwerke: -Hafen dns_suche: . hängt ab von: - Redis -Kern Protokollierung: Treiber: "syslog" Optionen: Syslog-Adresse: "tcp://127.0.0.1:1514" Schlagwort: "Jobservice" Redis: Bild: goharbor/redis-photon:v1.8.6 Containername: Redis Neustart: immer Kappe_Tropfen: - ALLE Cap_Add: (Hinzufügen) -CHOWN -SETGID -SETUID Bände: – /data/redis:/var/lib/redis Netzwerke: Hafen: dns_suche: . hängt ab von: -Protokoll Protokollierung: Treiber: "syslog" Optionen: Syslog-Adresse: "tcp://127.0.0.1:1514" Schlagwort: "redis" Proxy: Bild: goharbor/nginx-photon:v1.8.6 Containername: nginx Neustart: immer Kappe_Tropfen: - ALLE Cap_Add: (Hinzufügen) -CHOWN -SETGID -SETUID -NET_BIND_SERVICE Bände: - ./common/config/nginx:/etc/nginx:z Netzwerke: -Hafen dns_suche: . Häfen: 1180:80 -443:443 -4443:4443 hängt ab von: - PostgreSQL - Registrierung -Kern - Portal -Protokoll Protokollierung: Treiber: "syslog" Optionen: Syslog-Adresse: "tcp://127.0.0.1:1514" Schlagwort: "Proxy" Netzwerke: Hafen: extern: false 2. Ändern Sie die Datei /etc/docker/daemon.json und ändern Sie Port 80 in Port 1180: Daemon-Konfiguration ändern [root@centos130 ~]# cat /etc/docker/daemon.json { "Registrierungsspiegel": ["https://yxrgrke0.mirror.aliyuncs.com"], "unsichere Registrierungen": ["192.168.8.130:5000"], "unsichere Registrierungen": ["centos130:1180"], "log-driver": "JSON-Datei", "log-opts": { "max-size": "100m", "max-Datei": "3" } } 3. Ändern Sie den Hostnamen der Datei /usr/locat/harbor/harbor.yml Ändern Sie die Hostnamenkonfiguration cat /usr/locat/harbor/harbor.yml Hostname: centos130:1180 4. Stoppen Sie den Hafen, starten Sie neu und generieren Sie Konfigurationsdateien Neu initialisieren [root@centos130 ~]# cd /usr/locat/harbor/ [root@centos130 ~]# Docker-Compose-Stopp [root@centos130 ~]# ./install.sh 5. Docker neu starten [root@centos130 ~]# systemctl daemon-reload [root@centos130 ~]# systemctl restart docker.service Überprüfen Sie [root@centos130 ~]# docker login centos130:1180 Benutzername: admin Passwort: Harbor12345 Dies ist das Ende dieses Artikels über die Installation von Harbor mit Docker-Compose. Weitere Informationen zur Installation von Harbor mit Docker-Compose 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:
|
<<: So entwerfen Sie MySQL-Statistikdatentabellen
>>: CSS3 realisiert Textreliefeffekt, Gravureffekt, Flammentext
1. CSS-Elemente verbergen <br />In CSS gibt ...
Ich habe bereits einige grundlegende CSS-Selektor...
Inhaltsverzeichnis Konzept-Einführung Logische Re...
Inhaltsverzeichnis Vorwort: Spezifische Operation...
Heute habe ich zufällig den Parameter slave_exec_...
Inhaltsverzeichnis 1. Funktionsdefinition 1.1 Fun...
Wie installiere ich Nginx an einem bestimmten Ort...
Inhaltsverzeichnis 1. Automatische Installation m...
Inhaltsverzeichnis Erstellen Sie eine neue HTML-D...
Die Wiederverwendung von Code in Vue liefert uns ...
Mittlerweile werden die meisten Projekte auf Dock...
Vorwort Als ich zuvor „defineProperty“ vorgestell...
Die WEB-Entwicklung besteht hauptsächlich aus zwe...
Ich habe es im MSI-Format installiert, hauptsächl...
Starten Sie alle gestoppten Docker-Container mit ...