Запуск обновления Docker из git push

Я недавно начал работать с Docker в простой обстановке.

Я создал простой блог с генератором статических сайтов gatsbyJS.

Я упаковал свое приложение в докер:

//Dockerfile

FROM node:11.9.0

WORKDIR /usr/src/app

COPY package*.json ./

RUN npm install  
RUN npm install -g gatsby-cli


COPY . . 

EXPOSE 8000

CMD ["gatsby", "develop", "-H", "0.0.0.0"]

Все было загружено и развернуто на моем сервере и работает как положено.

Каждый пост в блоге представляет собой файл уценки, прочитанный gatsbyjs.

Насколько я понимаю, когда все мое приложение будет готово (javascript, css и т. Д.), Единственное, что я буду обновлять, - это репозиторий, в котором находятся мои сообщения (файлы уценки), когда я добавляю новое сообщение.

Я думаю, что рабочий процесс принять что-то вроде:

  1. Я написал новый файл уценки
  2. толкни его в github
  3. вызвать новое изображение и создание контейнера (верно?)

Нужно ли заново создавать новое изображение и контейнер только для добавления нового сообщения в блоге?

Как я могу инициировать эти действия на моем сервере, когда изменения передаются? Какие инструменты я должен использовать?

1 ответ

Для запуска push-события вы можете использовать хуки.
https://githooks.com/

Если вы не хотите создавать новое изображение каждый раз, когда добавляете запись в блоге, вы можете сопоставить путь уценки с вашим хостом. Таким образом, вы можете просто поместить новый файл уценки в сопоставленный том на вашем хосте, и ваш контейнер сможет использовать его.
https://docs.docker.com/storage/volumes/

Пример:
Добавьте следующие параметры в ваш порядок выполнения.
запуск докера... -v /docker/data/...:/data

Надеюсь это поможет.

Другие вопросы по тегам