Как получить доступ к файлам репозитория, клонированного во время сборки образа GCP, после того, как вы запустили виртуальную машину с полученным образом - PullRequest
0 голосов
/ 06 августа 2020

Я пытаюсь создать образ GCP в Реестре контейнеров, который содержит репозиторий, который я хочу использовать в виртуальной машине.

Во-первых, у меня есть Dockerfile, который клонирует репо из github, например:

FROM debian:latest

RUN apt update
RUN apt install -y git

RUN mkdir -p /opt/repo-location

WORKDIR /opt/repo-location/
RUN git clone git@github.com:random/repo.git

Я использую файл cloudbuild.yml для использования gcloud:

steps:
- name: 'gcr.io/cloud-builders/docker'
  args: ['build',
         '-t',
         'gcr.io/project-id/image-name',
         '.']
images: [
    'gcr.io/project-id/image-name',
]

Затем я могу успешно запустить его, который создает образ в реестре, и затем я могу создать виртуальную машину экземпляр, использующий это изображение. Однако, когда я вставляю sh в экземпляр и от go до /opt/, папки repo-location там нет.

Я много читал и вижу, как создаются файлы во время сборки недоступны после завершения сборки, но я не могу понять, как ее получить, поэтому они будут присутствовать на виртуальной машине после ее создания.

Я бы хотел, чтобы сборка могла выполнить несколько шагов по первоначальной настройке клонированного репо, чтобы я мог затем s sh войти и вручную запустить процесс из репозитория git.

Есть ли способ сделать это?

...