Docker Registrierung vs Nexus / Artefactory

9

Ist die 'Docker Registrierung' in der Docker Engine ähnlich wie Nexus / Artifactory? Was sind die Gemeinsamkeiten und Unterschiede zwischen ihnen? Wenn wir Nexus bereits haben, können wir es als Alternative zur Docker-Registrierung verwenden und es in die Docker-Engine einstecken?

Könnte jemand mir helfen, dies zu klären?

    
Sri 12.12.2016, 19:23
quelle

1 Antwort

23

Eine Docker-Registrierung ist ein Repository zum Verwalten von Docker-Images. Die Registrierung ist ein eigener Dienst und kein Bestandteil der Docker-Engine.
Die Registry hat eine ähnliche Verwendung wie Repository-Manager wie Artifactory oder Nexus, mit einem großen Unterschied: Ein Repository-Manager wird in der Regel Repository für verschiedene Arten von Technologien verwalten können, zum Beispiel: Maven, NPM, Ruby Gems, CocoaPods, Git LFS, Python Eier und andere. Eine reine Docker-Registrierung wird nur Docker-Bilder verwalten.
Es gibt einige Dinge, die Sie berücksichtigen sollten, wenn Sie ein Tool zum Verwalten Ihrer Docker-Registrierung auswählen:

  1. Leistung - Docker-Bilder können sehr groß sein. In einer CI / CD-Umgebung, in der täglich eine große Anzahl von Docker-Bildern erzeugt wird, benötigen Sie ein Werkzeug, mit dem Sie mit der Last fertig werden und die Sie beim Wachstum skalieren können. Einige Tools bieten eine Clustered (HA) -Version, mit der die Last auf mehrere Knoten verteilt werden kann.
  2. Speicherverwaltung - Docker-Images verbrauchen viel Speicherplatz. Es ist besser, ein Werkzeug zu wählen, das den benötigten Speicher effizient verwaltet:
    • Unterstützt die Deduplizierung von Bildebenen zwischen Bildern und Repositories
    • Reinigt effizient ungenutzte Bildebenen (Garbage Collection). Beachten Sie, dass einige Tools den Welt-GC-Mechanismus stoppen, der die Leistung beeinträchtigt.
    • Bietet Aufräumvorgänge / -mechanismen für Bilder, die das Löschen von Bildern basierend auf Alter, Nutzung usw. ermöglichen.
    • Unterstützt mehrere Speicher-Backends - Dateisystem, Objektspeicher
  3. Unterstützung für mehrere Registrys - Einige Tools beschränken die Verwaltung einer einzelnen Registrierung, während andere die parallele Verwaltung mehrerer Registrys ermöglichen. Dies ist nützlich, wenn Sie zwischen Snapshots und produktionsbereiten Images trennen müssen.
  4. Unterstützung für die neueste Docker-Version - Die Docker-Registrierungs-API und das Manifest-Format ändern sich häufig. Stellen Sie sicher, dass Sie ein Tool auswählen, das alle aktuellen Änderungen unterstützt.
  5. Universal - Wenn Sie mehr als Docker-Images verwalten müssen, was normalerweise der Fall ist, da Sie auch Tools wie NPM, Bower, Yum und andere verwenden, die ebenfalls eine Registrierung benötigen, wählen Sie einen universellen Repository-Manager, der dies unterstützt solche Technologien.
  6. Bereit für Unternehmen - Suchen Sie nach einem Tool, das bereit für Unternehmen ist und Funktionen wie LDAP-Konnektivität, rollenbasierte Zugriffssteuerung, hohe Verfügbarkeit, Multi-Site-Entwicklung usw. unterstützt.

Disclaimer: Ich arbeite für JFrog, die Firma hinter Artifactory

    
Dror Bereznitsky 13.12.2016, 11:53
quelle