Запуск обновления 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 и т. Д.), Единственное, что я буду обновлять, - это репозиторий, в котором находятся мои сообщения (файлы уценки), когда я добавляю новое сообщение.
Я думаю, что рабочий процесс принять что-то вроде:
- Я написал новый файл уценки
- толкни его в github
- вызвать новое изображение и создание контейнера (верно?)
Нужно ли заново создавать новое изображение и контейнер только для добавления нового сообщения в блоге?
Как я могу инициировать эти действия на моем сервере, когда изменения передаются? Какие инструменты я должен использовать?
1 ответ
Для запуска push-события вы можете использовать хуки.
https://githooks.com/
Если вы не хотите создавать новое изображение каждый раз, когда добавляете запись в блоге, вы можете сопоставить путь уценки с вашим хостом. Таким образом, вы можете просто поместить новый файл уценки в сопоставленный том на вашем хосте, и ваш контейнер сможет использовать его.
https://docs.docker.com/storage/volumes/
Пример:
Добавьте следующие параметры в ваш порядок выполнения.
запуск докера... -v /docker/data/...:/data
Надеюсь это поможет.