Можете ли вы использовать Kaniko для создания собственного образа для App Engine Flexible с развертыванием приложения gcloud?
Я создаю собственный образ для App Engine Flexible с gcloud app deploy
В настоящее время. Я играл с использованием Kaniko, чтобы получить кеширование работы с gcloud builds submit
для других проектов, но возможно ли включить Kaniko для сборки, представленной с gcloud app deploy
?
Я пробовал бегать gcloud config set builds/use_kaniko True
, который, кажется, не меняет поведение сборки.
Кажется, что одним из вариантов будет сначала создать изображение с помощью gcloud builds submit
затем используйте gcloud app deploy --image-url=...
, но я не был уверен, есть ли более обтекаемый путь.
1 ответ
Как вы уже сказали в своем вопросе, хорошим подходом было бы сначала использовать Google Cloud Build для создания собственного изображения с помощью Dockerfile, а затем использовать его при развертывании приложения в Google App Engine.
В Google Cloud Container Builder вы можете запустить Kaniko, добавив его в качестве шага сборки в конфигурации сборки:
steps:
- name: gcr.io/kaniko-project/executor:latest
args: ["--dockerfile=<path to Dockerfile>",
"--context=<path to build context>",
"--destination=<gcr.io/[PROJECT]/[IMAGE]:[TAG]>"]
Более подробную информацию можно найти в этих двух сообщениях в блоге о Google Cloud и kaniko. Пост 1 и 2.
После этого вы можете развернуть свое приложение, указав --image-url
флаг в команде gcloud:
gcloud app deploy --image-url=gcr.io/[PROJECT]/[IMAGE]:[TAG]