Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
devops:skaffold [2021/02/18 21:19] – [Настройка деплоя во внешний кластер] admin | devops:skaffold [2021/04/22 09:44] (current) – [Настройка проекта в GitLab] admin | ||
---|---|---|---|
Line 52: | Line 52: | ||
====== Настройка CI/CD на базе GitLab и Skaffold ====== | ====== Настройка CI/CD на базе GitLab и Skaffold ====== | ||
+ | ===== Настройка проекта в GitLab ===== | ||
+ | * Включаем CI/CD для проекта - **Settings -> General -> Visibility, project features, permissions -> Pipelines** | ||
+ | * Настраиваем переменные - **Settings -> CI/CD -> Variables**. Нужно добавить **DOCKER_REGISTRY_URL** и конфиги для кластеров (переменные **KUBECONFIG_PROD** и **KUBECONFIG_TEST**), | ||
+ | |||
===== .gitlab-ci.yml ===== | ===== .gitlab-ci.yml ===== | ||
< | < | ||
Line 81: | Line 85: | ||
name: docker.rdleas.ru/ | name: docker.rdleas.ru/ | ||
stage: build | stage: build | ||
- | | + | # |
- | - docker login -u `echo $DOCKER_REGISTRY_LOGIN` -p `echo $DOCKER_REGISTRY_PASS` `echo $DOCKER_REGISTRY_URL` | + | # - docker login -u `echo $DOCKER_REGISTRY_LOGIN` -p `echo $DOCKER_REGISTRY_PASS` `echo $DOCKER_REGISTRY_URL` |
# | # | ||
script: | script: | ||
Line 132: | Line 136: | ||
namespace: vrm | namespace: vrm | ||
valuesFiles: | valuesFiles: | ||
- | - chart/ | + | - '{{.VALUES}}' |
artifactOverrides: | artifactOverrides: | ||
image: vrm | image: vrm | ||
Line 150: | Line 154: | ||
COPY --from=builder /app/. ./ | COPY --from=builder /app/. ./ | ||
CMD ["/ | CMD ["/ | ||
- | Тут у нас двухстадийная сборка. \\ | + | Тут у нас двухстадийная сборка |
Сначала мы запускаем контейнер **maven**, который получает псевдоним **builder**, | Сначала мы запускаем контейнер **maven**, который получает псевдоним **builder**, | ||
А далее мы собираем второй контейнер на базе образа **OpenJDK JRE**, в который копируем файлики, | А далее мы собираем второй контейнер на базе образа **OpenJDK JRE**, в который копируем файлики, |