Доставка обновлений программного обеспечения с помощью Docker
Я использую docker-compose для запуска многоконтейнерного программного обеспечения в помещении (автономные сети). Каков наилучший способ доставки обновлений программного обеспечения, когда нет прямого подключения к реестру Docker?
Я попробовал 2 варианта (оба не достаточны):
1. Для доставки полных образов Docker, созданных с использованием docker save
, Очень неэффективно - каждое изображение выше 1 ГБ, без оптимизации слоев. 2. Поставить настроенное программное обеспечение в дополнение к образам Docker и сопоставить его с томами хоста в общих контейнерах. Таким образом, я могу доставлять только пользовательские обновления программного обеспечения и сокращать время, когда необходимо обновлять образы Docker. И все же это далеко не оптимально.
Есть ли способ доставить только обновленный слой Docker с пользовательским программным обеспечением в виде файла? Есть другие идеи?
Спасибо, Меир
1 ответ
У вас есть несколько вариантов:
- Настройте частный реестр в частной сети и позвольте серверам использовать это
- Используйте торрент-протокол для более быстрой работы, см. Проект Docket
- Если ничего, gzip сохранить с помощью
--rsyncable
вариант и использованиеrsync
вместоscp
- Используйте docker-slim, чтобы уменьшить конечный размер изображения
Я надеюсь, что сочетание нескольких методов выше должно быть достаточно хорошим.