Zum Inhalt springen

Registry Management

Diese Anleitung zeigt Ihnen, wie Sie Docker Registries in ReadyStackGo verwalten, um Images aus privaten Registries zu pullen.

ReadyStackGo unterstützt das Pullen von Docker Images aus beliebigen OCI-kompatiblen Registries. Über die Settings-Seite können Sie Registry-Credentials zentral verwalten und mit Image Patterns automatisch den richtigen Registries zuordnen.

Beim Pullen eines Images sucht ReadyStackGo Credentials in folgender Reihenfolge:

  1. Datenbank-Registries - Registries aus den Settings mit passenden Image Patterns
  2. DOCKER__CONFIGPATH - Pfad aus Umgebungsvariable oder appsettings.json
  3. DOCKER_CONFIG - Standard Docker-Konvention (Verzeichnis)
  4. /root/.docker/config.json - Standard-Pfad im Linux-Container
  5. Keine Auth - Für öffentliche Images

  1. Navigieren Sie zu Settings in der Sidebar
  2. Klicken Sie auf Add Registry
  3. Füllen Sie die Felder aus:
FeldBeschreibung
NameAnzeigename (z.B. “Docker Hub - Firma”)
URLRegistry-URL (z.B. https://index.docker.io/v1/)
UsernameOptional - für private Registries
PasswordOptional - für private Registries
Image PatternsOptional - Glob-Patterns für automatische Zuordnung
  1. Klicken Sie auf Save

Image Patterns bestimmen, welche Registry-Credentials für welche Images verwendet werden. Sie verwenden Glob-Syntax:

PatternBeschreibungBeispiel-Matches
library/*Ein Pfad-Segmentlibrary/nginx, library/redis
myorg/**Beliebig viele Pfad-Segmentemyorg/app, myorg/team/app
ghcr.io/**Registry-spezifischghcr.io/owner/repo
nginxExakte ÜbereinstimmungNur nginx
  • * matcht beliebige Zeichen innerhalb eines Pfad-Segments
  • ** matcht beliebige Zeichen über mehrere Pfad-Segmente
  • Patterns sind case-insensitive
  • Tags und Digests werden beim Matching ignoriert
RegistryImage PatternsVerwendet für
Docker Hub (Firma)meinefirma/*, meinefirma/**Firmen-Images auf Docker Hub
GitHub Container Registryghcr.io/**Alle GitHub Packages
Azure Container Registrymeinacr.azurecr.io/**Azure-gehostete Images
Default (Docker Hub)(keine - als Default markiert)Alle anderen öffentlichen Images

Sie können eine Registry als Default markieren. Diese wird für alle Images verwendet, die keinem Pattern entsprechen:

  1. Öffnen Sie die Registry in den Settings
  2. Aktivieren Sie Set as Default
  3. Speichern Sie

ReadyStackGo funktioniert mit jeder OCI-kompatiblen Registry:

RegistryURL-Format
Docker Hubhttps://index.docker.io/v1/
GitHub Container Registryhttps://ghcr.io
Azure Container Registryhttps://<name>.azurecr.io
Google Container Registryhttps://gcr.io
Amazon ECRhttps://<account>.dkr.ecr.<region>.amazonaws.com
Self-hostedhttps://registry.example.com

Failed to pull image 'meinefirma/myimage:latest' and no local copy exists.
Error: pull access denied for meinefirma/myimage

Ursachen:

  1. Keine Registry-Credentials konfiguriert
  2. Falsche Credentials
  3. Image Pattern matcht nicht
  4. Image existiert nicht in der Registry

Lösungen:

  1. Registry über Settings hinzufügen
  2. Image Pattern konfigurieren, das zu Ihrem Image passt
  3. Credentials überprüfen
  4. Image-Namen verifizieren

Falls konfigurierte Credentials nicht verwendet werden:

  1. Image Patterns prüfen - Passt das Pattern zu Ihrem Image?
  2. Pattern-Syntax prüfen - * für ein Segment, ** für mehrere
  3. Spezifischere Patterns - Hat eine andere Registry ein spezifischeres Pattern?

Für detaillierte Logs zur Credential-Auflösung:

environment:
- Logging__LogLevel__ReadyStackGo.Infrastructure.Docker=Debug

  • Passwörter werden in der SQLite-Datenbank gespeichert (nicht verschlüsselt at-rest)
  • Beschränken Sie den Zugriff auf die ReadyStackGo-Instanz
  • Die Datenbank-Datei sollte nur vom ReadyStackGo-Prozess lesbar sein
  • Verwenden Sie Service Accounts statt persönlicher Credentials