We self-host Ghost using Docker for our website Linux Handbook.
My colleague Avimanyu has put an excellent mechanism in place that allows updating Docker containers without downtime (if it is set via reverse proxy).
I was following his documents to update the Ghost version but I was greeted with an error that read this:
Pulling ghost (ghost:4.39.0)...
ERROR: manifest for ghost:4.39.0 not found: manifest unknown: manifest unknown
If you are trying to pull a Docker image and it shows the manifest not found error, here's what you need to know about solving it.
Manifest unknown because there is no such Docker image
That's the root cause in almost all of cases involving this error. The particular docker image you are trying to pull does not exist.
How is that possible? There could be several reasons for that.
- You made a typo while using a specific tag or version of the Docker image. For example, if it is version 20.04 and you typed 20.4, it will not find the image.
- You tried to download a version which is not available in Docker image yet. For example, in my case, Ghost version 4.39 was released but the latest Docker image was still tagged at version 4.38.1.
- If you are trying to download from a private repository, you may have to log in first:
docker login repository_details
Basically, you should double check the name and tag of the Docker image you are trying to pull from the repository. For example, it is common to use the latest tag while getting the Docker image but some images might not even have the latest tag (which is rare but possible).
If you are pulling the image from the Docker Hub (like most people), you can go to its web interface and see the name and available tags.
I hope this helps you troubleshoot the unknown manifest error with Docker. If you still have any questions, please feel free to leave a comment below.