Verwenden der Docker Enterprise Edition zum Erstellen Ihres eigenen privaten Registrierungsservers

Verwenden der Docker Enterprise Edition zum Erstellen Ihres eigenen privaten Registrierungsservers

Docker ist wirklich cool, vor allem, weil es im Vergleich zur Verwendung einer virtuellen Maschine so einfach ist, Docker-Images zu verschieben. Wenn Sie Docker verwenden möchten, müssen Sie das vollständige Image bereits aus Docker Hub heruntergeladen haben. Docker Hub ist der cloudbasierte Registrierungsserverdienst von Docker, der Tausende von Docker-Images zur Auswahl enthält. Wenn Sie Ihre eigenen Softwarepakete entwickeln und Ihre eigenen Docker-Images erstellen, möchten Sie über Ihr eigenes privates Register verfügen. Wenn Sie Bilder mit proprietären Lizenzen haben oder einen komplexen kontinuierlichen Integrationsprozess (CI) für Ihr Build-System bereitstellen möchten, sollten Sie über ein eigenes privates Register verfügen.

Docker Enterprise Edition enthält das Docker Trusted Registry (DTR). Es handelt sich um einen hochverfügbaren Registrierungsserver mit sicherer Bildverwaltung, der für den Betrieb in Ihrem eigenen Rechenzentrum oder auf einer Cloud-basierten Infrastruktur konzipiert ist. Im Folgenden werden wir sehen, dass DTR eine Schlüsselkomponente bei der Bereitstellung einer sicheren, wiederverwendbaren und kontinuierlichen Software-Lieferkette ist. Sie können sofort mit unserer kostenlosen gehosteten Demo loslegen oder eine kostenlose 30-Tage-Testversion herunterladen und installieren. Hier sind die Schritte, um selbst mit der Installation zu beginnen.

Docker Enterprise Edition konfigurieren

DTR läuft auf dem Universal Control Panel (UCP), daher müssen Sie vor dem Start einen Single-Node-Cluster installieren. Wenn Sie bereits über einen eigenen UCP-Cluster verfügen, können Sie diesen Schritt überspringen. Führen Sie auf Ihrem Docker-Host den folgenden Befehl aus:

# UCP ziehen und installieren
docker run -it -rm -v /var/run/docker.sock:/var/run/docker.sock -name ucp docker/ucp:neueste Installation

Sobald UCP einsatzbereit ist, müssen Sie vor der Installation von DTR einige Dinge erledigen. Öffnen Sie einen Browser für die gerade installierte UCP-Instanz. Am Ende der Protokollausgabe sollte ein Link vorhanden sein. Wenn Sie bereits eine Docker Enterprise Edition-Lizenz besitzen, geben Sie sie auf diesem Bildschirm ein. Wenn Sie es noch nicht haben, können Sie den Docker Store besuchen, um eine kostenlose 30-Tage-Testversion zu erhalten.

Sobald Ihre Lizenzen bereit sind, möchten Sie möglicherweise den Port ändern, auf dem UCP ausgeführt wird. Da es sich um einen Einzelknotencluster handelt, können DTR und UCP ihre Webdienste auf demselben Port ausführen. Wenn Sie einen UCP-Cluster mit mehr als einem Knoten haben, ist dies kein Problem, da DTR einen Knoten mit den erforderlichen freien Ports findet. Klicken Sie in UCP auf „Admin-Einstellungen -> Cluster-Konfiguration“ und ändern Sie den Controller-Port, beispielsweise 5443.

DTR installieren

Wir werden eine einfache DTR-Instanz mit einem Knoten installieren. Wenn Sie DTR für den tatsächlichen Produktionseinsatz installieren, sollten Sie es im Hochverfügbarkeitsmodus (HA) einrichten, der ein anderes Speichermedium erfordert, beispielsweise einen Cloud-basierten Objektspeicher oder NFS (LCTT-Übersetzungshinweis: Network File System). Da es sich bei der aktuellen Installation um eine Einzelknoteninstanz handelt, verwenden wir weiterhin den standardmäßigen lokalen Speicher.

Zuerst müssen wir das Bootstrap-Image von DTR ziehen. Das Bootstrap-Image ist ein kleines, eigenständiges Installationsprogramm, das alle Container, Volumes und logischen Netzwerke enthält, die für die Verbindung mit UCP und das Einrichten und Starten von DTR erforderlich sind.

Verwenden Sie den Befehl:

# Ziehen Sie den DTR-Bootloader und führen Sie ihn aus. docker run -it -rm docker/dtr:latest install -ucp-insecure-tls

Hinweis: UCP und DTR verfügen standardmäßig über eigene Zertifikate, die vom System nicht erkannt werden. Wenn Sie UCP bereits mit einem TLS-Zertifikat eingerichtet haben, dem Ihr System vertraut, können Sie -ucp-insecure-tls weglassen. Alternativ können Sie die Option -ucp-ca verwenden, um das UCP-CA-Zertifikat direkt anzugeben.

Das DTR-Bootstrap-Image fordert Sie dann auf, einige Einstellungen zu bestätigen, beispielsweise die URL der UCP-Installation sowie den Benutzernamen und das Kennwort des Administrators. Das Abrufen aller DTR-Bilder und die Einrichtung aller Elemente dauert nur ein bis zwei Minuten.

Bewahren Sie alles sicher auf

Sobald alles bereit ist, können Sie Bilder in die Registrierung übertragen oder daraus abrufen. Bevor wir das tun, richten wir TLS-Zertifikate ein, um sicher mit DTR zu kommunizieren.

Unter Linux können wir den folgenden Befehl verwenden (achten Sie nur darauf, die Variable DTR_HOSTNAME zu ändern, um das soeben eingerichtete DTR richtig zuzuordnen):

# Ziehen Sie das CA-Zertifikat von DTR (wenn curl nicht verfügbar ist, können Sie wget verwenden)
DTR_HOSTNAME=<DTR-Hostname>
curl -k https://$(DTR_HOSTNAME)/ca > $(DTR_HOSTNAME).crt
sudo mkdir /etc/docker/certs.d/$(DTR_HOSTNAME)
sudo cp $(DTR_HOSTNAME) /etc/docker/certs.d/$(DTR_HOSTNAME)
# Starten Sie den Docker-Daemon neu (verwenden Sie unter Ubuntu 14.04 den Befehl „sudo service docker restart“)
sudo systemctl Neustart Docker

Wir installieren den Client für Docker für Mac und Windows unterschiedlich. Gehen Sie zu „Einstellungen -> Daemon“ und geben Sie im Abschnitt „Unsicherer Registrierungsserver“ Ihren DTR-Hostnamen ein. Klicken Sie auf „Übernehmen“ und der Docker-Daemon sollte nach dem Neustart einsatzbereit sein.

Bilder pushen und pullen

Jetzt müssen wir ein Repository zum Speichern unserer Bilder einrichten. Dies unterscheidet sich ein wenig vom Docker Hub, da hier automatisch eines erstellt wird, wenn Sie einen Docker-Push durchführen und das Repository nicht existiert. Um ein Repository zu erstellen, öffnen Sie https://<Ihr DTR-Hostname> in Ihrem Browser und melden Sie sich bei der entsprechenden Aufforderung mit Ihren Administratoranmeldeinformationen an. Wenn Sie dem UCP eine Lizenz hinzufügen, erwirbt das DTR diese Lizenz automatisch. Wenn nicht, bestätigen Sie jetzt das Hochladen Ihrer Lizenz.

Nachdem Sie gerade die Webseite aufgerufen haben, klicken Sie auf die Schaltfläche „Neues Lager“, um ein neues Lager zu erstellen.

Wir erstellen ein Repository zum Speichern von Alpine Linux. Geben Sie daher „Alpine“ in das Namensfeld ein und klicken Sie auf „Speichern“ (in DTR 2.5 und höher „Erstellen“ genannt).

Nun gehen wir zurück zur Shelloberfläche und geben folgenden Befehl ein:

# Laden Sie die neueste Version von Alpine Linux herunter docker pull alpine:latest
# Melden Sie sich bei der neuen DTR-Instanz an docker login <Ihr DTR-Hostname>
# Tag Alpine, um Push zu Ihrem DTR zu aktivieren
Docker-Tag Alpine:latest <Ihr DTR-Hostname>/admin/alpine:latest
# Pushen Sie das Image zum DTR docker push <Ihr DTR-Hostname>/admin/alpine:latest

Das ist es! Wir haben einfach eine Kopie des neuesten Alpine Linux hochgeladen, sie für die Speicherung im DTR neu markiert und in unser privates Register hochgeladen. Wenn Sie das Image auf eine andere Docker-Engine ziehen möchten, richten Sie Ihr DTR-Zertifikat wie oben gezeigt ein und führen Sie dann den folgenden Befehl aus:

# Ziehen Sie das Image vom DTR docker pull <Ihr DTR-Hostname>/admin/alpine:latest

DTR verfügt über viele hervorragende Bildverwaltungsfunktionen, wie z. B. Bild-Caching, Bildgebung, Scannen, Signieren und sogar automatisierte Lieferkettenrichtlinien. Wir untersuchen diese Funktionen in späteren Blogbeiträgen ausführlicher.

Zusammenfassen

Oben habe ich Ihnen die Verwendung von Docker Enterprise Edition zum Erstellen Ihres eigenen privaten Registrierungsservers vorgestellt. Ich hoffe, es wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • Centos7 verwendet Docker zum Erstellen eines Gitlab-Servers
  • So erstellen Sie mit Docker in 1 Minute einen DNS-Server
  • So stellen Sie Docker schnell auf einem Ubuntu-Server bereit
  • So installieren und führen Sie einen Apache2-Server als Image-Server in Docker aus
  • So migrieren Sie Docker-Container zwischen Servern
  • Erstellen Sie in 3 Minuten einen Minecraft-Server mit Docker

<<:  Zusammenfassung verschiedener Möglichkeiten zum Erstellen von Objekten in js und ihrer Vor- und Nachteile

>>:  MySQL-Einstellungscode für die grüne Version und Details zum Fehler 1067

Artikel empfehlen

So implementieren Sie Web-Stresstests mit Apache Bench

1. Einführung in Apache Bench ApacheBench ist ein...

Verwendung von Umgebungsvariablen in Docker und Lösungen für häufige Probleme

Vorwort Docker kann Umgebungsvariablen für Contai...

Detaillierte Anweisungen zur Installation von MySQL8.0.19 im CentOS7.5-Tutorial

1. Einleitung Dieser Artikel enthält keine Screen...

JavaScript-Grundlagen: Fehlererfassungsmechanismus

Inhaltsverzeichnis Vorwort Error-Objekt werfen ve...

So zeigen Sie Linux-SSH-Dienstinformationen und den Ausführungsstatus an

Es gibt viele Artikel zur SSH-Serverkonfiguration...

So zeigen Sie MySql-Indizes an und optimieren sie

MySQL unterstützt Hash- und B-Tree-Indizes. InnoD...

Einführung in Docker-Container

Docker-Übersicht Docker ist eine Open-Source-Lösu...

Vue implementiert Chat-Schnittstelle

In diesem Artikelbeispiel wird der spezifische Co...

Der Implementierungsprozess der Linux-Prozessnetzwerkverkehrsstatistik

Vorwort Linux verfügt über entsprechende Open-Sou...

Mehrere Möglichkeiten zum Hinzufügen von Zeitstempeln in MySQL-Tabellen

Szenario: Die Daten in einer Tabelle müssen mithi...

Toolkit: Ein leistungsfähigeres Front-End-Framework als Bootstrap

Hinweis: Die derzeit beliebtesten Front-End-Frame...