Docker save и load: перенести образ без registry

Категория: docker · Язык: Bash · Обновлено:

docker save упаковывает image и его слои в tar, а docker load восстанавливает их на другой машине. Такой перенос выручает в закрытой сети, где нет доступа к registry. ????? ??????????? ?????????? ???????? ?????? ??????? ? ????????? ?????? ? ??????? ?????.

Рабочий пример

Bash
docker save myapp:1.8 | gzip > myapp-1.8.tar.gz
# Передать архив защищённым каналом
gzip -dc myapp-1.8.tar.gz | docker load
docker image inspect myapp:1.8

Перед экспортом назначьте стабильный tag или digest. После загрузки проверьте образ через image inspect; для нескольких тегов можно перечислить несколько image в docker save.

Частый вопрос

Чем save отличается от export?

save переносит image со слоями и тегами. export делает плоский архив файловой системы контейнера и не сохраняет историю образа.