@webe
frontend

Как правильно перезаливать файлы, через образ или через контейнер?

Разбираюсь с докером, но не могу понять как все таки перезаливать файлы, подскажите плиз основную философию
Допустим программист сделал новый коммит на ГИТ, нужно подцепить исходники, сбилдить например через NPM run build
как правильно делать?

1) На основе исходников, создаю новый образ с этими файлами, (но обязательно перед этим удаляю старый контейнер или старый образ, т.к. docker build -f ./dockerfile -t front . не может перезаписать старый образ) дальше снова запукаю контейнер на основе этого образа.
2) делаю образ 1 раз и никогда его не трогаю, контейнер создаю тоже 1 раз но открываю что-то типа SFTP через который пробрасываю ZIP и уже распаковываю внутри контейнера

Основная загадка для меня как делать перебилд если у нас появились новые исходники допустим сайта, неужели придется всегда сперва останавливать контейнер полностью его удалять, удалять старый образ и только после этого выполнять docker build -f ./dockerfile -t front .
  • Вопрос задан
  • 132 просмотра
Решения вопроса 1
fox_12
@fox_12
Расставляю биты, управляю заряженными частицами
Как-то сложно и ненужно.
Стартуете нужный образ.
Делаете точки монтирования, где лежат исходные файлы и куда сбилдить результат.
Запускаете npm run build. В точку монтирования билдится результат.
Гасите контейнер.
То есть рассматриваете контейнер просто как изолированную среду выполнения кода, которая через точки монтирования взаимодействует с вашим проектом. В большинстве случаев что-либо заливать внутрь контейнера, хранить внутри контейнера код - не требуется.
Постоянно держать запущенный контейнер - тоже не требуется, если используете его для ребилда.
Обновился проект, - залили на сервер. Стартанули контейнер. Сбилдили исходники. Погасили контейнер.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы