Como copio uma imagem do docker para uma máquina remota?

2

Eu tenho uma imagem do Docker que eu criei:

» docker images --no-trunc | grep discoball/nginx
discoball/nginx                 latest              623444f1777c        21 hours ago        126 MB

Eu gostaria de mover isso para um servidor remoto; docker save e docker load parecem ser comandos capazes de serializar e desserializar uma imagem para / de um arquivo, que deve ser exatamente o que eu preciso. No entanto, não consigo fazer isso funcionar.

Salvei a imagem:

» docker save discoball/nginx > nginx-latest.tar.gz

Em seguida, tente restaurá-lo no controle remoto:

» cat nginx-latest.tar.gz | ssh "$IP" docker load

Esse comando é executado com sucesso. No entanto, docker images no controle remoto indica que a imagem não foi gerada; em vez disso, o que parece ser uma versão antiga ainda está presente:

» ssh "$IP" docker images --no-trunc | grep discoball/nginx
discoball/nginx        latest              2678dc27dd46        21 hours ago        126 MB

Observe que o ID da imagem é diferente. Eu estou supondo que esta é uma versão antiga da minha imagem. A pesquisa pelo ID da imagem em si também não produz resultados no servidor:

» ssh "$IP" docker images --all | grep 623444
(last command returned 1.)
»

O que estou fazendo de errado?

Então, agora estou pesquisando no arquivo .tar.gz gerado; o arquivo repositories parece indicar que a máquina remota está certa:

» tar -xf nginx-latest.tar.gz -O repositories
{"discoball/nginx":{"latest":"2678dc27dd46469bc8692c2e5ad71b57ae573b1444531fcd1f76798638f84f5c"}}

Esse é o número que vejo no controle remoto. Mas por que diabos o docker save escreveu isso, e não 623444f1777c ? (Os IDs de imagem do docker não são apenas hashes criptográficos da imagem e / ou da camada?) Se o remoto tiver a mesma imagem, por que ele possui uma ID de imagem diferente? (Eu não sei como verificar isso no momento, porque até esse momento, eu teria dito que "mesma imagem" era "ID da mesma imagem" ...)

    
por Thanatos 28.07.2017 / 19:03

0 respostas

Tags