★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★
Сайт Димарика
Последнее обновление: Май 2026
★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★ ✦ ★
НАВИГАЦИЯ
> Главная
> 🔥 Лента приколов
> 📰 Новости
> 📔 Блог
> 🎙 Подкасты
> 📖 Гостевая
> Написать мне
ПОДПИСКА
RSS Подписаться на блог
СТАТИСТИКА
*** HIT COUNTER ***
004511
TOTAL VISITORS
Сегодня: 1
Онлайн: 1
Рекорд дня: 202
(14.05.2026)

ПОГОДА
КОТИРОВКИ
сегодня завтра
USD ЦБ 72,7479 +0,0000 72,7479
EUR ЦБ 84,3439 +0,0000 84,3439
ЦБ РФ на 18.06.2026
ГлавнаяБлог → docker

📔 Блог Димарика / docker [× сбросить]
Docker Buildkit: Правильное использование --mount=type=cache
Опубликовано: 17.02.2022 12:00 #Dev #cache #docker #python

TL;DR Содержимое каталогов, смонтированных через --mount=type=cache, не сохраняется в docker-образе, поэтому кэшировать надо не целевые каталоги, а промежуточные.

В dockerfile:1.3 появилась возможность монтировать файловые системы во время построения образа, в том числе и в целях кэширования: можно кэшировать скачанные пакеты или промежуточные артефакты компиляции.

Например, пакет uwsgi каждый раз компилируется при установке, и это время хочется сократить, закэшировав весь каталог с пакетами:

# syntax=docker/dockerfile:1.3
FROM python:3.10

RUN mkdir /pip-packages

RUN --mount=type=cache,target=/pip-packages \
      pip install --target=/pip-packages uwsgi
> docker build -t pip-cache -f Dockerfile.pip .
# ...
[+] Building 14.6s (7/7) FINISHED

Выглядит, что все прошло успешно, но целевой каталог пуст:

> docker run -it --rm pip-cache ls -l /pip-packages
total 0

Что-то явно пошло не так.

[ читать дальше » ]


СЛУЧАЙНАЯ ЦИТАТА
Повесил свой сюртук на cron...

[ Новая цитата ]
ДРУЗЬЯ
kk.consulting kk.consulting
пиши на webmaster@dimarik.com,
если хочешь присоединиться
СТАТУС СЕРВЕРА
$ uptime
вычисляем...
$ git log --oneline -1
9c520e6 'Serve /misc from persistent server dir'
ЛУЧШЕ СМОТРИТСЯ В
Internet Explorer Firefox

PROUDLY MADE WITH
OpenAI Claude Code
Python Django