Я пытаюсь передать образ докера между двумя компьютерами:

  • машина 1
    • Ubuntu 16.04
    • докер 17.06.2
  • машина 2
    • Убунту 18.10
    • докер 18.03.1

Вот что я сделал:

-машина 1:

docker save -o /path/to/usb/image.tar image

-Перемещение USB-накопителя с машины 1 на машину 2

-машина 2:

$ docker load -i /path/to/usb/image.tar
36018b5e9787: Loading layer [==================================================>]  200.1MB/200.1MB
invalid diffID for layer 0: expected "sha256:36018b5e978717a047892794aebab513ba6856dbe1bdfeb478ca1219df2c7e9c", got "sha256:a81b174512918f17d0735e6c32075c2437c22fac6b13c1d20c92449406f66bcd"

У кого-нибудь есть объяснение этому?

исследования

Это может быть проблема с моей флешкой, но:

  • Я пробовал это дважды, поэтому я сомневаюсь, что это из-за неправильной копии
  • Не я выполнил diff между image.tar на машине 1 и image.tar на флешку, никакой разницы
  • Я использую эту флешку интенсивно почти каждый день, она отлично работает

Кроме того, после копирования архива изображений на USB-накопитель, я могу загрузить его обратно на компьютер 1.


Наконец, я попытался выполнить загрузку докера, читая вместо стандартного файла stdin, но все еще безуспешно:

$ cat /path/to/usb/image.tar | docker load
invalid diffID for layer 0: expected "sha256:36018b5e978717a047892794aebab513ba6856dbe1bdfeb478ca1219df2c7e9c", got "sha256:a81b174512918f17d0735e6c32075c2437c22fac6b13c1d20c92449406f66bcd"

Он отлично работает с машиной 3, Ubuntu 16.04, Docker 18.05.0.


Я обновил до докера 18.06.0 на машине 1, до сих пор не повезло.

0