Helm + ECR
Для стандартизации процессов в Kubernetes окружениях, использующих Helm для деплоя сервисов удобно иметь и чарты в виде докер-образов. Такая возможность на текущий момент в Helm доступна лишь в экспериментальном режиме:
В докер-реестрах других провайдеров такая поддержка уже была раньше, наконец, с сентября 2020-го года она есть и в ECR:
https://docs.aws.amazon.com/AmazonECR/latest/userguide/push-oci-artifact.html
Настроим переменные:
Сохраняем чарт:
Логинимся Хелмом в реестр (aws-cli version 2):
Пушим чарт в ECR:
Спулить чарт из ECR:
Распаковать чарт в текущую папку:
Распаковать чарт в нужную папку (останется изначально имеющаяся вложенность):
#ECR #Helm
Для стандартизации процессов в Kubernetes окружениях, использующих Helm для деплоя сервисов удобно иметь и чарты в виде докер-образов. Такая возможность на текущий момент в Helm доступна лишь в экспериментальном режиме:
export HELM_EXPERIMENTAL_OCI=1В докер-реестрах других провайдеров такая поддержка уже была раньше, наконец, с сентября 2020-го года она есть и в ECR:
https://docs.aws.amazon.com/AmazonECR/latest/userguide/push-oci-artifact.html
Настроим переменные:
ECR_AWS_ID=123456789012ECR_REGION=eu-central-1CHART_DIR=my-chartREPO_NAME=helm-repoIMAGE_TAG=build-1HELM_REGISTRY=${ECR_AWS_ID}.dkr.ecr.${ECR_REGION}.amazonaws.comHELM_ECR_ADDRESS=${HELM_REGISTRY}/${REPO_NAME}:${IMAGE_TAG}Сохраняем чарт:
helm chart save ${CHART_DIR} ${HELM_ECR_ADDRESS}Логинимся Хелмом в реестр (aws-cli version 2):
aws ecr get-login-password --region ${ECR_REGION} | helm registry login --username AWS --password-stdin ${HELM_REGISTRY}Пушим чарт в ECR:
helm chart push ${HELM_ECR_ADDRESS}Спулить чарт из ECR:
helm chart pull ${HELM_ECR_ADDRESS}Распаковать чарт в текущую папку:
helm chart export ${HELM_ECR_ADDRESS}Распаковать чарт в нужную папку (останется изначально имеющаяся вложенность):
helm chart export ${HELM_ECR_ADDRESS} --destination some-dir#ECR #Helm
Amazon
Pushing a Helm chart to an Amazon ECR private repository - Amazon ECR
Push Open Container Initiative (OCI) artifacts to an Amazon ECR private repository
Если вдруг попадали ваши CI/CD пайплайны, а в логах почему-то не хотят ставиться давно не изменяемые рабочие Helm чарты (например, для ALB Ingress Controller), то это потому что после 13 ноября они официально перестали работать:
https://github.com/helm/charts
Нужно переделать скрипты установки Helm чартов на
#Helm
https://github.com/helm/charts
Нужно переделать скрипты установки Helm чартов на
charts.helm.sh:helm repo add stable https://charts.helm.sh/stablehelm repo add incubator https://charts.helm.sh/incubator#Helm