Комментарии 4
А потом в проекте появляется torch и transformers, и добро пожаловать в мир тридцатиминутных сборок и образов по 10 гигов 🙈
Можно все-таки добавить билд исполняемого файла, чтобы не тянуть с собой пакеты ОС явно, а чисто 1 исполняемый файл
Если файл исполняемый без внешних плагинов, то scratch/alpine достаточно
Если раннер/билдер в единственном экземпляре и не stateless, то можно повесить кэш пакетов: --mount=type=cache в докере.
Если доступа к диску в 3 пункте нет (а-ля какой-нибудь Kaniko), то лучше использовать зеркало пакетов максимально близкое к раннеру/билдеру, чтобы не качать пакеты из внешней сети. Это касается и питона, и ОС.
C uv можно ещё быстрее :)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Оптимизация сборки Python Docker образа: размер меньше на -43% (-57%)