Understanding Docker Compose Pull –parallel: An Advanced Overview
Docker Compose ist ein leistungsstarkes Werkzeug, das entwickelt wurde, um die Verwaltung von Multi-Container-Docker-Anwendungen zu erleichtern. Eines seiner Befehle, docker-compose pull, wird verwendet, um die in einer Compose-Datei definierten Images herunterzuladen. Mit der Einführung des --parallel flag, users can significantly improve the efficiency of this process by allowing multiple image pulls to occur simultaneously. This article delves into the intricacies of the docker-compose pull --parallel command, exploring its benefits, use cases, and best practices in an advanced context.
Die Rolle von Docker Compose in containerisierten UmgebungenDocker Compose ist ein leistungsstarkes Tool, das die Verwaltung und Orchestrierung von Multi-Container-Anwendungen in Docker-Umgebungen vereinfacht. Es ermöglicht Entwicklern und DevOps-Teams, komplexe Anwendungen mit mehreren voneinander abhängigen Diensten zu definieren, bereitzustellen und zu verwalten, indem sie eine einzige YAML-Konfigurationsdatei verwenden.In containerisierten Umgebungen spielt Docker Compose eine entscheidende Rolle bei der Vereinfachung des Lebenszyklus von Anwendungen. Anstatt jeden Container manuell zu erstellen, zu konfigurieren und zu verbinden, ermöglicht Docker Compose die Definition aller Dienste, Netzwerke und Volumes in einer einzigen Datei namens "docker-compose.yml". Diese deklarative Konfiguration erleichtert die Reproduzierbarkeit und Portabilität von Anwendungen über verschiedene Umgebungen hinweg.Ein wesentlicher Vorteil von Docker Compose ist die Fähigkeit, Multi-Container-Anwendungen mit einer einzigen Befehlszeile zu starten, zu stoppen und zu skalieren. Mit dem Befehl "docker-compose up" können alle definierten Dienste gleichzeitig gestartet werden, wobei ihre Abhängigkeiten automatisch aufgelöst werden. Ebenso ermöglicht "docker-compose down" das saubere Herunterfahren und Entfernen aller Container, Netzwerke und Volumes, die mit der Anwendung verbunden sind.Docker Compose erleichtert auch die Entwicklung und das Testen von Anwendungen, indem es eine konsistente Umgebung über verschiedene Entwicklungsstadien hinweg bereitstellt. Entwickler können die gleiche "docker-compose.yml"-Datei verwenden, um ihre Anwendung lokal auszuführen, sie in einer Staging-Umgebung bereitzustellen und schließlich in der Produktion zu deployen. Diese Konsistenz reduziert das Risiko von "Es funktioniert auf meinem Rechner"-Szenarien und stellt sicher, dass die Anwendung in verschiedenen Umgebungen wie erwartet funktioniert.Darüber hinaus unterstützt Docker Compose die Integration mit anderen Docker-Tools und -Diensten, wie Docker Swarm für die Orchestrierung und Skalierung von Anwendungen über mehrere Hosts hinweg. Es ermöglicht auch die Verwendung von Umgebungsvariablen und Konfigurationsdateien, um die Anwendungskonfiguration basierend auf der Zielumgebung anzupassen.Zusammenfassend lässt sich sagen, dass Docker Compose eine entscheidende Rolle in containerisierten Umgebungen spielt, indem es die Verwaltung von Multi-Container-Anwendungen vereinfacht, die Konsistenz über verschiedene Umgebungen hinweg fördert und die Entwicklung und Bereitstellung von Anwendungen rationalisiert. Seine deklarative Konfiguration, die einfache Bedienung und die Integration mit anderen Docker-Tools machen es zu einem unverzichtbaren Werkzeug für moderne Softwareentwicklung und DevOps-Praktiken.
Docker Compose simplifies the deployment of complex applications by leveraging Docker containers. It enables users to define services, networks, and volumes in a single YAML file (docker-compose.yml). This makes it easier to manage the lifecycle of applications that consist of multiple, interdependent services.
Wichtigste Funktionen von Docker Compose
- Service Management: Define multiple services and manage their lifecycle as a cohesive unit.
- Netzwerken: Automatische Erstellung eines Netzwerks für die Kommunikation zwischen Diensten, wodurch die Kommunikation zwischen Containern vereinfacht wird.
- Volume ManagementDaten zwischen Diensten einfach mit Docker-Volumes austauschen.
- UmgebungskonfigurationDie Unterstützung von Umgebungsvariablen ermöglicht eine flexible Konfiguration von Diensten.
With the rise of microservices architecture, Docker Compose has become increasingly relevant, providing the tools necessary to streamline development and deployment workflows.
Die Grundlagen von docker-compose pulldocker-compose pull ist ein Befehl, der verwendet wird, um die Images für einen Dienst zu aktualisieren. Er lädt die Images für alle Dienste in einer docker-compose.yml-Datei herunter, die nicht bereits auf dem Host-System vorhanden sind oder die eine neuere Version haben.Hier sind einige grundlegende Konzepte und Optionen, die mit docker-compose pull verbunden sind:1. Grundlegender Befehl: ``` docker-compose pull ``` Dieser Befehl lädt die Images für alle Dienste in der docker-compose.yml-Datei herunter.2. Dienst spezifizieren: ``` docker-compose pull [service_name] ``` Sie können auch einen bestimmten Dienst angeben, dessen Image aktualisiert werden soll.3. Include-deps: ``` docker-compose pull --include-deps ``` Diese Option lädt auch die Images für alle Abhängigkeiten der Dienste herunter.4. Ignore-pull-failures: ``` docker-compose pull --ignore-pull-failures ``` Mit dieser Option werden Fehler beim Herunterladen von Images ignoriert und der Befehl wird fortgesetzt.5. Quiet: ``` docker-compose pull --quiet ``` Diese Option unterdrückt die Ausgabe des Befehls.6. Parallel: ``` docker-compose pull --parallel ``` Diese Option ermöglicht das parallele Herunterladen von Images, was den Prozess beschleunigen kann.7. Authentication: Wenn die Images aus einer privaten Registry stammen, müssen Sie sich möglicherweise authentifizieren, bevor Sie sie herunterladen können. Dies kann mit dem Befehl `docker login` erfolgen.8. Versionen: docker-compose pull lädt immer die neueste Version eines Images herunter, es sei denn, eine bestimmte Version ist in der docker-compose.yml-Datei angegeben.9. Caching: docker-compose pull nutzt das Docker-Caching, um den Download-Prozess zu optimieren. Wenn ein Image bereits auf dem Host-System vorhanden ist, wird es nicht erneut heruntergeladen, es sei denn, es gibt eine neuere Version.10. Integration mit docker-compose up: Wenn Sie `docker-compose up` ausführen, wird automatisch `docker-compose pull` ausgeführt, um sicherzustellen, dass die neuesten Images verwendet werden.Zusammenfassend ist docker-compose pull ein nützliches Werkzeug, um sicherzustellen, dass Ihre Docker-Umgebung immer auf dem neuesten Stand ist. Es ist besonders nützlich in CI/CD-Pipelines und bei der Verwaltung von Multi-Container-Anwendungen.
Die docker-compose pull command is used to retrieve images for the services defined in the docker-compose.yml Datei. Standardmäßig lädt sie Bilder sequenziell, was langsam sein kann, wenn mehrere Bilder benötigt werden. Die Syntax für den Befehl ist unkompliziert:
docker-compose pull [OPTIONEN] [DIENST...]Optionen
--ignore-pull-failures: Ziehen Sie weiterhin Bilder, auch wenn einige fehlschlagen.--leiseAusgabe unterdrücken.--parallel: Ermöglicht das parallele Abrufen von Bildern.
The Introduction of –parallel
Die --parallel option allows users to download multiple images simultaneously, substantially reducing the time taken to pull images, especially in environments with numerous microservices. This option is especially beneficial when:
- Docker Hub oder eine benutzerdefinierte Registry verfügen über eine hohe Bandbreitenkapazität.
- The application architecture involves many services, each requiring its own image.
- There are performance constraints and time-sensitive deployments.
How to Use docker-compose pull --parallel
Um die Vorteile des --parallel option, simply add it to your docker-compose pull Befehl
docker-compose pull --parallelDieser Befehl wird den Prozess des Herunterladens der Images für alle in Ihrer Compose-Datei definierten Dienste gleichzeitig einleiten und dabei die verfügbaren Netzwerkressourcen effektiv nutzen.
Die Auswirkungen des parallelen ZiehensParallelziehen ist eine Technik, die in verschiedenen Bereichen Anwendung findet, insbesondere in der Materialwissenschaft und im Maschinenbau. Es bezieht sich auf den Prozess, bei dem mehrere Materialstränge oder -bänder gleichzeitig durch eine Reihe von Walzen oder anderen Formgebungswerkzeugen gezogen werden, um ihre Eigenschaften zu verbessern oder ihre Abmessungen zu reduzieren.In der Metallverarbeitung wird das Parallelziehen häufig verwendet, um die Festigkeit und Duktilität von Metallen zu erhöhen. Durch das gleichzeitige Ziehen mehrerer Drähte oder Bänder können Hersteller die Produktivität steigern und gleichzeitig eine gleichmäßige Qualität über alle produzierten Teile hinweg gewährleisten. Dies ist besonders wichtig in der Automobil- und Luftfahrtindustrie, wo hochfeste Materialien für sicherheitskritische Komponenten erforderlich sind.In der Textilindustrie ermöglicht das Parallelziehen die Herstellung von feinen, gleichmäßigen Fasern aus Rohmaterialien wie Baumwolle oder synthetischen Polymeren. Dieser Prozess trägt zur Verbesserung der Qualität und Konsistenz von Stoffen bei, was wiederum die Leistung und Haltbarkeit der Endprodukte beeinflusst.Darüber hinaus findet das Parallelziehen Anwendung in der Herstellung von elektronischen Bauteilen, wo es zur Erzeugung von dünnen, leitfähigen Drähten verwendet wird, die in Schaltkreisen und anderen elektronischen Geräten eingesetzt werden. Die Präzision und Gleichmäßigkeit, die durch das Parallelziehen erreicht werden, sind entscheidend für die Zuverlässigkeit und Leistungsfähigkeit dieser Bauteile.Zusammenfassend lässt sich sagen, dass das Parallelziehen eine vielseitige und effiziente Technik ist, die in verschiedenen Industriezweigen zur Verbesserung der Materialeigenschaften und zur Steigerung der Produktivität beiträgt. Durch die gleichzeitige Verarbeitung mehrerer Materialstränge ermöglicht es Herstellern, hochwertige Produkte mit konsistenten Eigenschaften zu produzieren, was in vielen Anwendungen von entscheidender Bedeutung ist.
Mit Hilfe des --parallel Flag kann zu signifikanten Verbesserungen der Bereitstellungszeiten führen. Betrachten Sie die folgenden Szenarien:
Szenario 1: Bilder sequenziell abrufen
When pulling images sequentially, if you have ten images to pull and each takes an average of 5 seconds, the total time will be:
Gesamtzeit = 10 Bilder * 5 Sekunden/Bild = 50 SekundenScenario 2: Pulling Images in Parallel
Durch die Ermöglichung der --parallel flag, Docker Compose kann alle zehn Bilder gleichzeitig herunterladen. Vorausgesetzt, Ihr Netzwerk kann diese Last bewältigen und es gibt keine Bandbreitenbeschränkungen, könnte sich die Gesamtzeit auf etwa reduzieren:
Gesamtzeit = 5 Sekunden (für das langsamste Bild)Limitations and Considerations
While the --parallel option offers clear benefits, there are several aspects to consider before implementing it in your workflows.
Network Bandwidth
Die Effektivität des parallelen Pullens hängt stark von Ihrer Netzwerkbandbreite ab. Wenn Ihr Netzwerk gesättigt ist, kann das parallele Pullen von Images möglicherweise keine signifikanten Zeitersparnisse bringen und könnte sogar zu einer langsameren Gesamtleistung aufgrund von Staus führen.
Ratenbegrenzung
Many container registries, including Docker Hub, enforce rate limiting on image pulls. If you exceed these limits, you may encounter delays or failures in pulling images. In scenarios with high parallelism, you risk hitting these limits more quickly.
Image Size and Complexity
The size and complexity of the images being pulled can also impact performance. Large images with multiple layers may take longer to pull, and pulling too many large images simultaneously could overwhelm your system’s resources.
Systemressourcennutzung
Parallel pulling consumes more system resources, particularly CPU and memory. Ensure that your host machine has sufficient resources to handle multiple concurrent pulls without affecting other running processes.
Best Practices for Using docker-compose pull –parallelThe docker-compose pull –parallel command is a powerful tool for efficiently updating Docker images in multi-container applications. By pulling multiple images simultaneously, it can significantly reduce the time required for updates. However, to maximize its benefits and avoid potential issues, it's essential to follow best practices. Here are some key recommendations:1. Use a stable network connection: Ensure you have a reliable and fast internet connection to fully leverage the parallel pulling feature. A stable connection minimizes the risk of interruptions and ensures smooth image downloads.2. Prioritize critical services: If certain services are more critical to your application, consider pulling their images first. You can achieve this by using multiple docker-compose pull commands or by adjusting the order of services in your docker-compose.yml file.3. Monitor resource usage: Parallel pulling can be resource-intensive. Keep an eye on your system's CPU, memory, and network usage during the process. If you notice performance issues, consider reducing the number of parallel pulls or scheduling updates during off-peak hours.4. Implement proper error handling: While docker-compose pull –parallel is generally reliable, it's wise to implement error handling in your update scripts. This ensures that if one image fails to pull, it doesn't halt the entire update process.5. Use version pinning: To maintain consistency across environments, use specific version tags for your images rather than relying on the "latest" tag. This practice helps prevent unexpected changes in image behavior.6. Regularly clean up unused images: After pulling new images, use docker image prune to remove unused images and free up disk space. This is especially important when frequently updating images in development environments.7. Consider using a registry mirror: If you're working in an environment with limited internet bandwidth, consider setting up a local registry mirror. This can significantly speed up image pulls by caching frequently used images.8. Test updates in a staging environment: Before applying updates to your production environment, test the new images in a staging environment. This helps identify any compatibility issues or unexpected behavior before they impact your live application.9. Use docker-compose version 1.25 or later: The –parallel flag was introduced in docker-compose version 1.25. Ensure you're using a compatible version to take advantage of this feature.10. Be mindful of rate limits: If you're pulling images from a registry with rate limits (such as Docker Hub), be aware that parallel pulling may consume your quota more quickly. Consider using authenticated pulls or alternative registries if you frequently hit rate limits.11. Leverage build caching: If you're building custom images, use multi-stage builds and leverage build caching to speed up the image building process. This can complement the benefits of parallel pulling when updating your application.12. Document your update process: Maintain clear documentation of your update process, including any specific commands or scripts used. This ensures consistency across team members and simplifies onboarding for new developers.By following these best practices, you can effectively utilize docker-compose pull –parallel to streamline your Docker image update process. Remember that while parallel pulling can significantly improve efficiency, it's essential to balance speed with stability and reliability in your deployment pipeline.
To maximize the benefits of docker-compose pull --parallel, Berücksichtigen Sie die folgenden bewährten Verfahren:
1. Assess Your Network Capabilities
Before implementing parallel pulls, assess your network capabilities and bandwidth availability. Perform tests to determine how many parallel processes your network can handle without degradation in performance.
2. Monitor Resource Usage
Überwachen Sie die CPU- und Speichernutzung während des Abrufprozesses, um sicherzustellen, dass Ihr System nicht überlastet wird. Tools wie htop oder die nativen Überwachungsfunktionen von Docker können Einblicke in die Ressourcennutzung bieten.
3. Stufenweises Skalieren
If you are new to parallel pulling, start with a small number of concurrent pulls and gradually increase the number as you monitor performance. This will allow you to find an optimal configuration for your environment.
4. Utilize Caching
Leverage Docker’s caching mechanism to minimize the need for pulling images. If images are not changing frequently, consider using local images or tagged versions to reduce pull frequency.
5. Implementieren Sie CI/CD-Pipelines
Integrieren docker-compose pull --parallel into your Continuous Integration/Continuous Deployment (CI/CD) pipelines for enhanced deployment efficiency. This can automate the process and ensure that the latest images are always pulled in an optimized manner.
Real-World Use Cases
Microservices-Architektur
In einer Microservices-Architektur werden Anwendungen in kleinere, verwaltbare Dienste zerlegt. Jeder Dienst kann sein eigenes Docker-Image haben, was zu einer hohen Anzahl von Images führen kann, die während der Bereitstellung heruntergeladen werden. Die Nutzung docker-compose pull --parallel stellt sicher, dass alle Bilder schnell heruntergeladen werden, was schnellere Bereitstellungen ermöglicht.
Development Environments
Für Entwicklungsumgebungen, die häufige Updates erfordern, ist die --parallel option can save significant time during the setup process. Developers can pull the latest versions of images simultaneously, ensuring they work with the most recent code without unnecessary delays.
Continuous Integration Systems
In CI-Umgebungen, in denen automatisierte Builds und Tests üblich sind, ist die Verwendung von docker-compose pull --parallel kann den Prozess rationalisieren und sicherstellen, dass die neuesten Bilder immer für Tests verfügbar sind, wodurch die Ausfallzeiten zwischen den Phasen minimiert werden.
Fehlerbehebung bei häufigen Problemen
Image Pull Failures
If an image pull fails, Docker Compose will output an error message. Use the --ignore-pull-failures Option, um weiterhin andere Bilder abzurufen, aber die Ursache des Fehlers zu untersuchen, wie z. B. Netzwerkprobleme oder falsche Bildnamen.
Slow Pull Times
If you notice slow pull times despite using the --parallel option, examine your network conditions, Docker daemon configurations, and the size of the images being pulled. Optimizing these factors can significantly improve performance.
RessourcenengpässeIn the previous chapter, we discussed the importance of resource management and how it can help you optimize your system's performance. In this chapter, we will delve deeper into the topic of resource bottlenecks and how they can affect your system's performance.A resource bottleneck occurs when a particular resource becomes a limiting factor in the overall performance of your system. This can happen when a resource is being used at or near its maximum capacity, causing delays and slowdowns in other areas of the system. Identifying and addressing resource bottlenecks is crucial for maintaining optimal system performance.There are several types of resources that can become bottlenecks in a system, including:1. CPU: The central processing unit (CPU) is responsible for executing instructions and performing calculations. If the CPU is constantly running at or near its maximum capacity, it can cause delays in other areas of the system, such as input/output operations or memory access.2. Memory: Random access memory (RAM) is used to store data temporarily while the system is running. If the system runs out of available memory, it may start using virtual memory, which is much slower than physical memory. This can cause significant slowdowns in the system's performance.3. Disk I/O: Input/output operations involving the hard disk drive (HDD) or solid-state drive (SSD) can also become bottlenecks if they are not optimized properly. Slow disk I/O can cause delays in loading files, saving data, and accessing information stored on the disk.4. Network: Network bandwidth and latency can also become bottlenecks, especially in distributed systems or applications that rely heavily on network communication. Slow network connections can cause delays in data transfer and affect the overall performance of the system.To identify resource bottlenecks, you can use various monitoring tools and techniques. Some common methods include:1. Performance monitoring: Use built-in system tools or third-party applications to monitor the usage of various resources over time. This can help you identify trends and patterns that may indicate potential bottlenecks.2. Profiling: Profiling involves analyzing the performance of specific components or functions within your application. This can help you pinpoint areas where resources are being used inefficiently or where bottlenecks may be occurring.3. Load testing: Load testing involves simulating high levels of usage on your system to see how it performs under stress. This can help you identify potential bottlenecks before they become critical issues.Once you have identified a resource bottleneck, there are several strategies you can use to address it:1. Optimize resource usage: Look for ways to reduce the amount of resources being used by your application or system. This may involve optimizing algorithms, reducing memory usage, or improving disk I/O efficiency.2. Scale up resources: If a particular resource is consistently running at or near its maximum capacity, consider upgrading to a more powerful version of that resource. For example, if your CPU is constantly maxed out, you may need to upgrade to a faster processor.3. Distribute load: If possible, distribute the workload across multiple resources to reduce the strain on any single resource. This may involve using load balancing techniques or implementing a distributed architecture.4. Cache frequently accessed data: Caching involves storing frequently accessed data in a faster storage medium, such as RAM or an SSD. This can help reduce the load on slower resources, such as the hard disk drive.In conclusion, resource bottlenecks can have a significant impact on the performance of your system. By understanding the different types of resources that can become bottlenecks and using appropriate monitoring and optimization techniques, you can ensure that your system runs smoothly and efficiently.
If your system becomes unresponsive during parallel pulls, revisit your resource allocation and consider limiting the number of concurrent pulls. Adjusting the Docker daemon’s resource limits can also help manage system load.
Fazit
Die docker-compose pull --parallel Dieser Befehl ist ein Spielveränderer für Entwickler- und Betriebsteams, die ihre Deployment-Workflows optimieren möchten. Durch das Verständnis der Besonderheiten dieses Befehls und seiner Auswirkungen in einer Multi-Container-Umgebung können Teams die Image-Pull-Zeiten deutlich reduzieren, CI/CD-Prozesse straffen und letztlich die Effizienz ihrer Entwicklungs- und Produktionspipelines verbessern. Wie immer ist es entscheidend, Leistungsgewinne mit Ressourcenmanagement und operativen Überlegungen abzuwägen, um ein reibungsloses Deployment-Erlebnis zu gewährleisten. Durch die Etablierung von Best Practices und die kontinuierliche Bewertung der Anforderungen Ihrer Umgebung können Sie das volle Potenzial von Docker Compose und seinen Fähigkeiten in der modernen Anwendungsentwicklung und -bereitstellung ausschöpfen.
Verwandte Beiträge:
- Docker Compose Pull –ignore-pull-failures
- Docker Compose PullDer Befehl `docker-compose pull` wird verwendet, um die Images für die Services in einer Docker Compose-Datei herunterzuladen. Dies ist nützlich, um sicherzustellen, dass die neuesten Versionen der Images verfügbar sind, bevor Sie Ihre Anwendung starten oder neu aufbauen.Hier ist die grundlegende Syntax für den Befehl:``` docker-compose pull [OPTIONEN] [SERVICE...] ```- `[OPTIONEN]` sind optionale Flags, die das Verhalten des Befehls ändern können. - `[SERVICE...]` ist eine optionale Liste von Services, für die Sie die Images herunterladen möchten. Wenn Sie keine Services angeben, werden die Images für alle Services in der Compose-Datei heruntergeladen.Hier sind einige der häufig verwendeten Optionen:- `--ignore-pull-failures`: Ignoriert Fehler beim Herunterladen von Images. - `--parallel`: Lädt Images parallel herunter, um den Prozess zu beschleunigen. - `--quiet`: Zeigt keine Fortschrittsinformationen an.Beispiel:``` docker-compose pull ```Dieser Befehl lädt die Images für alle Services in der Compose-Datei herunter.``` docker-compose pull web db ```Dieser Befehl lädt nur die Images für die Services "web" und "db" herunter.``` docker-compose pull --parallel ```Dieser Befehl lädt die Images für alle Services parallel herunter, was den Prozess beschleunigen kann.Denken Sie daran, dass `docker-compose pull` nur die Images herunterlädt, aber keine Container erstellt oder startet. Um Ihre Anwendung mit den heruntergeladenen Images zu starten, können Sie `docker-compose up` verwenden.
- Docker Image Pull
- Dockerfile –pullIn Dockerfiles können Sie das Schlüsselwort `pull` verwenden, um ein bestimmtes Image aus einem Registry zu ziehen. Dies ist nützlich, wenn Sie ein bestimmtes Image verwenden möchten, das nicht im lokalen Cache vorhanden ist. Hier ist ein Beispiel:```dockerfile FROM ubuntu:latest RUN apt-get update && apt-get install -y \ python3 \ python3-pip ```In diesem Beispiel wird das neueste Ubuntu-Image aus dem Docker Hub gezogen und als Basis für das Dockerfile verwendet. Anschließend werden Python 3 und pip installiert.Sie können auch ein bestimmtes Tag eines Images angeben, indem Sie den Tag-Namen nach dem Image-Namen angeben:```dockerfile FROM ubuntu:18.04 RUN apt-get update && apt-get install -y \ python3 \ python3-pip ```In diesem Beispiel wird das Ubuntu-Image mit dem Tag `18.04` gezogen.Wenn Sie ein Image aus einem privaten Registry ziehen möchten, müssen Sie sich zuerst bei diesem Registry authentifizieren. Dies können Sie tun, indem Sie den Befehl `docker login` verwenden:```bash docker login registry.example.com ```Anschließend können Sie das Image aus dem privaten Registry ziehen, indem Sie den Registry-Namen vor dem Image-Namen angeben:```dockerfile FROM registry.example.com/my-image:latest RUN apt-get update && apt-get install -y \ python3 \ python3-pip ```In diesem Beispiel wird das Image `my-image` mit dem Tag `latest` aus dem privaten Registry `registry.example.com` gezogen.
