Облачная сборка GCP на основе триггера кода Java, помещенного в битовую корзину - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь GCP Cloud Build на основе Триггер из Spring Boot java Приложение Код вставлен в Бит Bucket . пока я делаю это вручную, копирую код в виртуальную машину GCP, собираю там, создаю Docker образ , pu sh в реестр контейнеров GCP и развертывание в Kubernetes Двигатель , который работает нормально. Мне нужно автоматизировать сборку на основе триггера каждый раз, когда я пу sh код. У меня есть код на моем личном bitbucket . Реестр контейнеров GCP имеет доступ к моему хранилищу битбакетов. Мой docker файл

> FROM java:8 WORKDIR / ADD
> build/libs/SpringBootApplication-0.0.1-SNAPSHOT.jar
> SpringBootApplication.jar EXPOSE 8080 ENTRYPOINT
> ["java","-jar","SpringBootApplication.jar"]

, но во время сборки, он дает ошибку, что

SpringBootApplication.jar is not available-- no such file or directory. 

Я знаю это, потому что на виртуальной машине GCP я не клонировал и не собирал код , я должен написать клон и построить код в Dockerfile также ?? если да, то какой смысл аутентифицировать Bitbucket с GCP Cloud Build .

1 Ответ

0 голосов
/ 29 января 2020

Возможно, потому что рабочий каталог cloudbuild изначально /workspace

https://cloud.google.com/cloud-build/docs/build-config

Так вот почему файл не найден, ваш WORKDIR is /

Также это не решило бы всю проблему CI / CD, так как вам все еще нужно обновить кластер.

Вместо того, чтобы использовать только Dockerfile, вам нужно создать файл cloudbuild.yaml с шагами

Шаг 1, построить docker образ (убедитесь, что для ускорения используйте кеш) Шаг 2, пометьте Шаг 3, pu sh в реестр Шаг 4, обновите gke cluster

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