Я пытаюсь оптимизировать хранение в моем реестре docker и получаю проблемы с использованием удаленного кэша.
Мой docker файл выглядит следующим образом:
FROM java:11-debian
LABEL maintainer="Me"
ENV LANG en_US.utf8
RUN addgroup --system --gid 51170 myusername
...
Если я собираю локально несколько раз, используется кеш.
Для конвейера Jenkins я всегда отмечаю свою последнюю сборку с последним и извлеките последний последний непосредственно перед сборкой текущего сообщения:
docker pull artifactory/image:latest
docker build -t artifactory/image --cache-from artifactory/image:latest .
docker tag artifactory/image artifactory/image:latest
docker push artifactory/image:latest
Вывод журнала выглядит следующим образом:
...
---> f6363f58bc32
Step 2/18 : LABEL maintainer="Me"
---> Using cache
---> 54efd5e63c04
Step 3/18 : ENV LANG en_US.utf8
---> Using cache
---> 6865c5539193
Step 4/18 : RUN addgroup --system --gid 51170 myusername
Removing intermediate container f8d05d2e5f16
---> af5202782abc
...
Почему RUN не кэшируется в случае удаленного кэша? В чем разница между локальным кешем и использованием --cache-from?