TGViewer
Питонические атаки Питонические атаки @pythonic_attacks · 1.15K subscribers
Post #279 819
День Docker'а на канале.

Все, кто пользуется Docker, знают, что он кэширует сборку слоями, команда за командой. Но знали ли вы, что с недавних пор помимо кэширования слоями можно ещё закэшировать отдельную папку? Например, таким образом можно заставить работать встроенный в pip кэш и не перекачивать все ваши 1000 пакетов старых зависимостей из PyPI каждый раз, если вы вдруг решили добавить ещё одну новую.

Магия активируется вот таким набором заклинаний:

1. устанавливаем переменную окружения, чтобы задействовать новый механизм сборки:

$ export DOCKER_BUILDKIT=1

2. в начало Dockerfile добавляем строчку с указанием на новый синтаксис:

# syntax = docker/dockerfile:1.3

3. в команду RUN добавляются новые аргументы:

RUN --mount=type=cache,target=/root/.cache \
pip install -r requirements.txt

Docker закэширует эту папку у себя во внутреннем кэше, и будет подкладывать её внутрь для этого шага при каждой новой сборке. В итоговом образе этих файлов не будет, но шаг с установкой зависимостей будет проходить намного быстрее.

Как минимум, это удобно для сборки образов на локальной машине. Если в CI настроить сохранение кэшей Docker'а между запусками, то это тоже будет работать.

https://pythonspeed.com/articles/docker-cache-pip-downloads/

#синийкит #docker
Python⇒Speed Speed up pip downloads in Docker with BuildKit’s new caching Every time you change your Python pip requirements and rebuild your Docker image, you’re going to redownload all your packages. You can fix this with BuildKit.
More from @pythonic_attacks
  1. May 24, 2026GPT-5.5 по дефолту предпочитает использовать uv. Совпадение? Абсолютно точно нет. Логично…
  2. Mar 19, 2026Новость вызывает столько противоречивых мыслей, что я даже прерву радио молчание. С одной…
  3. Mar 19, 2026https://openai.com/index/openai-to-acquire-astral/ & https://astral.sh/blog/openai Это не…
  4. Nov 17, 2025Ну что же.. Мы совместно с Эммой Смит опубликовали Pre-PEP о добавлении Раста в CPython. В…
  5. May 19, 2025Вышел трейлер документалки о Python. Что-то на уровне Marvel, возможно даже выше https://w…
  6. May 15, 2025All good things come to an end Что ж, скажем Майкрософту спасибо, что 4 года содержал кома…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →