Вы можете достичь этого, используя контейнер инициализации на основе alpine/git
изображения (поместите его на тот же уровень отступа, что и ваш основной контейнер ), который смонтирует ваш том перед запуском основного контейнера и предварительно заполнит его данными, например, путем клонирования репозитория bitbucket.
Это может выглядеть примерно так:
...
spec {
volume {
name = "wordpress-persistent-storage-${terraform.workspace}-${each.value.name}"
persistent_volume_claim {
claim_name = "wordpress-volumeclaim-${terraform.workspace}-${each.value.name}"
}
}
init_container {
name = "init-clone-bitbucket-repo"
image = "alpine/git"
image_pull_policy = "IfNotPresent"
command = ["git", "clone", "<bitbucket_repo_URL>", "/data/my-bitbucket-repo" ]
volume_mount {
name = "wordpress-persistent-storage-${terraform.workspace}-${each.value.name}"
mount_path = "/data"
}
}
container {
name = each.value.name
image = "wordpress"
...
Это просто пример, который вам может потребоваться в дальнейшем приспособить к вашим потребностям.