Как обновлять проект в докере

Сейчас пишу один проект, который планирую запускать на сервере в докер-контейнере. Проект имеет репозиторий на гит-хабе, он постепенно будет обновляться. В случае обновления нужно скнлонировать реп с гита.

Вопрос: как я должен буду обновлять проект на сервере? Мне нужно будет пересобирать докер-image проекта или же я смогу заходить в контейнер и уже там проводить обновление?

P.S. Только начинаю пользоваться докером, опыта совсем нет.


Ответы (1 шт):

Автор решения: Total Pusher

Мне нужно будет пересобирать докер-image проекта или же я смогу заходить в контейнер и уже там проводить обновление?

Правильный способ - пересобирать, так как это воспроизводимо. Вот что написано в официальной документации:

It can be useful to commit a container’s file changes or settings into a new image. This allows you to debug a container by running an interactive shell, or to export a working dataset to another server. Generally, it is better to use Dockerfiles to manage your images in a documented and maintainable way.

То есть, создание образа из обновленного контейнера используется:

  • для дебага
  • для экспорта образа с набором данными на другой сервер

А пересборка через Dockerfile:

  • документирована
  • поддерживаема

PS. Кроме сборки из Dockerfile, есть и другие способы, которые более пригодны именно для продакшена, например через werf

→ Ссылка