загрузка докера: проверьте актуальность
Мое приложение работает в контейнере Docker, и я использую автономное развертывание, в котором я
docker save
изображение на моей машине разработки и связать его с приложением- вручную перенести пакет tarfile и мое приложение через USB-накопитель
docker load
это на целевой машине (цель не подключена к сети)
Шаги 1 и 3 выполняются сценариями BASH (Linux).
Обновления приложений часто не требуют обновления образа Docker, и поскольку docker save
а также docker load
являются достаточно медленными и ресурсоемкими, я бы по возможности избегал этих шагов.
Есть ли способ узнать, есть ли tar
'ed изображение равно изображению IMAGE:TAG
на моем демоне Docker?
я пытался skopeo inspect docker-archive:...
vs. docker image inspect ...
вывод для сравнения, но, похоже, нет идентификатора изображения для сравнения. Я видел, что уровни RootFS равны, но это надежная гарантия, что я могу пропуститьdocker save
/ docker load
?
1 ответ
Docker до сих пор не поддерживает эту функцию, но я решил аналогичную проблему, используя bash, чтобы "взломать его"
что я сделал:
Я сохранил образ докера, например "mymongo: latests", в файл tar, позвольте ему называть его x.tar
Я автоматически запустил свой скрипт и извлек из tar файл "repositories" 3, который на самом деле содержит json, например
{"mymongo":{"latest":"someId"}}
проанализируйте это как json, потому что myMongo - это изображение, а последнее - это тег