Команда сборки в Docker
Команда сборки выполняется в момент сборки образа и в готовый шаблон уже не входит. Служба запускает её один раз в временной среде, а результат остаётся файлами в слое. Сама команда в образ как строка не сохраняется.
За это отвечает строка
RUN в файле шагов.
Её не путают с командой
docker build в терминале:
одна живёт в тексте рецепта,
другая запускает сборку.
В примере запишем слово
в файл на диске шаблона.
Основа - alpine.
При сборке образа note
команда создаст файл
/note.txt.
Файл шагов такой:
FROM alpine
RUN echo built > /note.txt
После сборки с меткой
-t note . при запуске
можно прочитать файл изнутри.
Команда cat выведет слово
built - его оставил
шаг сборки.
Выполним сборку и чтение:
docker build -t note .
Контейнер исчезнет после вывода, если указать автоудаление. На экране останется одна строка с текстом из файла. Откроем содержимое так:
docker run --rm note cat /note.txt
При сборке образа mark запишите в файл /mark.txt слово ok.
При запуске прочитайте этот файл и убедитесь, что слово на месте.