Dockerfile против создания изображения из контейнера - PullRequest
0 голосов
/ 03 февраля 2020

Есть ли разница между созданием изображения с помощью Dockerfile и созданием изображения из контейнера? (например, запустить контейнер из той же базы, что и Dockerfile, перенести isntaller в контейнер, запустить их из командной строки, а затем создать образ из контейнера).

По крайней мере, я обнаружил, что установка V C Runtime from Windows База docker контейнер не работает: (

1 Ответ

2 голосов
/ 03 февраля 2020

Если вы создаете изображение с помощью Dockerfile, обновить его можно почти тривиально, извлекая его из системы контроля версий, обновляя тег на базовом изображении или docker pull используя его более новую версию и повторно запуская docker build.

Если вы создаете образ, запустив docker commit, и через год вы обнаружите, что в базовом дистрибутиве Linux есть критическая уязвимость, и вам необходимо прекратить его использование немедленно , вам нужно вспомнить, что вы сделали год go для создания образа и какие именно шаги вы предприняли, чтобы повторить их, и вам лучше надеяться, что вы сделаете их точно так же снова. О, если бы вы только записали в текстовый файл, какое базовое изображение вы запустили FROM, какие файлы вам нужно COPY, а затем какие команды вам нужно RUN, чтобы настроить приложение в образе. ..

Короче говоря, написание Dockerfile, передача его в систему контроля версий и запуск docker build почти всегда намного лучше, чем запуск docker commit. Вы можете настроить систему непрерывной интеграции для перестройки образа при каждом изменении исходного кода; когда есть такая уязвимость безопасности, тривиально вставить строку FROM в новый базовый образ и перестроить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...