Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Manifest not found on docker composer even if the tag exists

I have this YML file

docker-compose-testing.yml

with docker compose configuration:

version: '3'                                                
services:                                                   
  nginx_testing:                                            
    image: MY_SERVER_IP:5000/lens/nginx_testing:${VERSION}  
    volumes:                                                
      - certs:/etc/letsencrypt                              
      - certs-data:/data/letsencrypt                        
    ports:                                                  
      - 80:80                                               
      - 443:443                                             
    depends_on:                                             
      - ws_server                                           
      - translator                                          
      - auth                                                
  ws_server:                                                
    image: MY_SERVER_IP:5000/lens/ws_server:${VERSION}      
  worker:                                                   
    image: MY_SERVER_IP:5000/lens/worker:${VERSION}         
    depends_on:                                             
      - ws_server                                           
  translator:                                               
    image: MY_SERVER_IP:5000/lens/translator:${VERSION}     
  auth:                                                     
    image: MY_SERVER_IP:5000/lens/auth:${VERSION}           
    volumes:                                                
      - auth-data:/usr/src/app/data                         

volumes:                                                    
  certs:                                                    
  certs-data:                                               
  auth-data:                                                

Normally, I use this command to apply the above configuration:

export VERSION=578d8de && envsubst < docker-compose-testing.yml | docker-compose -f - pull && envsubst < docker-compose-testing.yml | docker-compose -f - -p PROJECT_NAME up -d --no-build --scale worker=5

Now, when I execute this command (above) the console show this error:

Pulling translator (MY_SERVER_IP:5000/lens/translator:578d8de)... ERROR: manifest for MY_SERVER_IP:5000/lens/translator:578d8de not found

The response for one similar question below says that the tag do not exists:

Error response from daemon: manifest for ibmblockchain/fabric-peer:latest not found

But when I list the images with command:

docker images | grep 578d8de

Console show this output proving that the tag exists:

MY_SERVER_IP:5000/lens/auth            578d8de             8103c4d63870        2 hours ago         195MB
MY_SERVER_IP:5000/lens/nginx_testing   578d8de             578d8dead150        4 hours ago         235MB
MY_SERVER_IP:5000/lens/translator      578d8de             e9eb25fa0aef        5 hours ago         185MB
MY_SERVER_IP:5000/lens/ws_server       578d8de             92b1d1a4cee9        5 hours ago         177MB
MY_SERVER_IP:5000/lens/worker          578d8de             22a935deba5c        7 days ago          175MB

Some extra details:

  1. The server (MY_SERVER_IP) has a docker registry listening on 5000 port.

  2. The image with version tag 578d8de was uploaded to the server not with registry, but with the "docker save" and "scp" command on the dev machine, and "docker load" on the server.

Any idea why this error is occurring?

like image 652
Gean Ribeiro Avatar asked May 27 '18 05:05

Gean Ribeiro


People also ask

What is manifest in docker image?

A manifest list is a list of image layers that is created by specifying one or more (ideally more than one) image names. It can then be used in the same way as an image name in docker pull and docker run commands, for example.

What is docker manifest JSON?

Docker's JSON config file describes the environment that built the docker image and its history. ( here, 5d1cdcfd1c744987e4916f7815874391b29bff62e3df2d29885683e1b39e4c0a.json ) manifest.json file – The manifest. json file describes the location of the layers and config file.

What is a container manifest?

Today's term of the day is a container manifest, which is a document showing contents and loading sequence, point of origin, and point of destination for a container. All vessels are required by law to carry such a document for each container carried.

How do I run a Rails program in docker?

In your terminal, change your directory to the docker-rails directory and run the following command: >_ docker build -t rubyapp . To create a container from this image, run the command docker run -p 3000:3000 rubyapp . This creates a container and binds port 3000 of your host computer to port 3000 of the container.


1 Answers

This error is happenning when I send image with scp command to server and load the image to docker.

How I don't use docker push to the registry, the image don't exists in registry.

So when docker-compose pull execute, don't find image on registry and dispatch the error.

like image 148
Gean Ribeiro Avatar answered Oct 13 '22 15:10

Gean Ribeiro