Как обновить мой Dockerfile, чтобы упаковать приложение в контейнер с помощью реестра gcloud? - PullRequest
0 голосов
/ 25 февраля 2019

Я пытаюсь собрать приложение с помощью gcloud:

  1. исходный регистр
  2. реестр контейнеров
  3. вычислительный движок

Итак, мой текущий Dockerfile выглядит следующим образом:

FROM ruby:2.5-alpine

RUN apk update && apk --update add \
 build-base \
 nodejs \
 postgresql-dev \
 tzdata \
 imagemagick

# yarn
ENV PATH=/root/.yarn/bin:$PATH
RUN apk add --virtual build-yarn curl && \
    touch ~/.bashrc && \
    curl -o- -L https://yarnpkg.com/install.sh | sh && \
    apk del build-yarn


RUN mkdir /app
COPY . /app
WORKDIR /app

RUN bundle install --binstubs
CMD puma -C config/puma.rb

Мой текущий рабочий процесс заключается в том, чтобы передать мой код на сервер, а затем я создаю образ и затем использую docker-compose для запуска проекта.

Я пытаюсь заставить это работать, используя облачную платформу Google.

Я использую их службу репозитория исходников (git), а также реестр контейнеров.

Как мне обновить мой Dockerfileполучить исходный код из исходного реестра?

Затем я должен нажать это в реестре контейнера, чтобы создать образ.

1 Ответ

0 голосов
/ 25 февраля 2019

Согласно вашему описанию, я думаю, что вам нужен CI / CD-сервер (например, jenkins).

  1. [Code] Обновите ваш код и нажмите git
  2. [Build] Jenkins triger by git push event.
  3. [Build] Используйте Jenkins для извлечения кода и создания нового образа докера
  4. [Управление артефактами] Jenkins отправьте новый образ докера в реестр контейнера
  5. [Развертывание] Используйте Jekins, чтобы запустить сервер, вытащить новый образ и запустить его.

Если у вас нет jenkins, вы можете попробовать чистое облачное решение, предоставляемое GCP cloud-build

CI/CD

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