With the further development of DevOps and the popularity of cloud native applications, Docker has become one of the standard tools for development, deployment and operation and maintenance. Docker is a tool that directly operates containers, and containers provide a lightweight virtualization method that can package code, environment and dependencies into an independent running environment, and quickly transplant and deploy it on different nodes to maximize It greatly improves the portability and scalability of applications, making operation and maintenance more convenient and efficient.
However, in the actual use of Docker, sometimes you encounter some strange problems, such as the image missing. This problem is generally caused by an image on Docker Hub being deleted or the registry where it is located inaccessible, causing Docker to make an error during the process of pulling the image, thus affecting the stability and reliability of the entire application.
So, how to solve this problem? Generally speaking, there are two solutions: one is to use other image sources, such as Alibaba Cloud, Tencent Cloud, etc.; the other is to build Docker Registry locally and save the required images locally, thereby no longer relying on external sources. The mirror source improves the reliability and stability of the application.
Use other image sources
Taking Alibaba Cloud as an example, we need to first register an account on Alibaba Cloud's container image service and activate the service. Select "Image Accelerator" on the console, and you will get a URL. This URL is the Docker image accelerator address provided by Alibaba Cloud.
Copy this address to the /etc/docker/daemon.json
file and restart the Docker service. For example:
{ "registry-mirrors": ["https://xxxxxxxx.mirror.aliyuncs.com"] }
When you use the Docker command to pull the image later, you can add the --registry-mirror
parameter after the command to specify the use of Alibaba Cloud Mirror Accelerator, for example:
docker pull --registry-mirror=https://xxxxxxxx.mirror.aliyuncs.com library/nginx
Building Docker Registry locally
Using domestic Docker Hub image sources such as Alibaba Cloud and Tencent Cloud can help solve the problem of missing images, but the operating model of these companies generally charges based on volume. For some businesses that need to use resources very frequently, they may also face higher cost pressure. Moreover, the country has also begun to require some important data to be stored and transmitted within China. Therefore, at some point, the unavailability of foreign registry ports may also become a bottleneck.
Building Docker Registry locally can solve these problems. We only need to build a Docker Registry on a Linux server and push the required image to this Registry. The specific steps are as follows:
- Pull the Docker Registry image
Use the following command on the local server to pull the Docker Registry image:
docker pull registry
- Run the Docker Registry container
Use the following command to start the Docker Registry container:
docker run -d -p 5000:5000 --restart=always --name registry registry:latest
By default, the Registry will listen on the local port 5000 and use the local file system as image storage library.
- Push the image
Use the following command on the local computer to push a local Dcoker image to the Registry:
docker tag <local_image_name> <registry_url>/<remote_image_name> docker push <registry_url>/<remote_image_name></remote_image_name></registry_url></remote_image_name></registry_url></local_image_name>
where is the local Docker image name,
<registry_url></registry_url>
is the IP address of our local server and the 5000 port number, <remote_image_name></remote_image_name>
is The name of the image pushed to the Registry.
- Pull the image
Use the following command to pull the image from the Registry:
docker pull <registry_url>/<remote_image_name></remote_image_name></registry_url>
By building the Docker Registry locally, we can quickly save and retrieve it required images, and better control the deployment and operation of Docker images. Moreover, the locally built Docker Registry can support more advanced functions, such as image management, account permission control, image warehouse modeling, image sharing, etc. These functions can further optimize our Docker operation and maintenance process and improve our performance in DevOps. Competitiveness.
In short, the problem of missing images is a common and troublesome problem during Docker operation. However, through reliable Docker image accelerators such as Alibaba Cloud or building Docker Registry locally, we can solve this problem well. This further improves the reliability and stability of applications, speeds up construction and deployment, and improves the efficiency of DevOps.
The above is the detailed content of What happens when the docker image disappears?. For more information, please follow other related articles on the PHP Chinese website!

The article details deploying applications to Docker Swarm, covering preparation, deployment steps, and security measures during the process.

The article explains Kubernetes' pods, deployments, and services, detailing their roles in managing containerized applications. It discusses how these components enhance scalability, stability, and communication within applications.(159 characters)

The article discusses scaling applications in Kubernetes using manual scaling, HPA, VPA, and Cluster Autoscaler, and provides best practices and tools for monitoring and automating scaling.

The article discusses managing Kubernetes deployments, focusing on creation, updates, scaling, monitoring, and automation using various tools and best practices.

The article discusses implementing rolling updates in Docker Swarm to update services without downtime. It covers updating services, setting update parameters, monitoring progress, and ensuring smooth updates.

Article discusses managing services in Docker Swarm, focusing on creation, scaling, monitoring, and updating without downtime.

This article details implementing rate limiting and resource quotas in Docker. It covers CPU, memory, and I/O limits using cgroups, emphasizing best practices for preventing resource exhaustion. Network rate limiting, requiring external tools like

The article discusses strategies to optimize Docker for low-latency applications, focusing on minimizing image size, using lightweight base images, and adjusting resource allocation and network settings.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Atom editor mac version download
The most popular open source editor

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.