cicd practice part 1

This commit is contained in:
Sergey Bondarev
2021-12-08 18:05:43 +03:00
parent a280222940
commit e1c7c25668
33 changed files with 2768 additions and 0 deletions
@@ -0,0 +1,66 @@
# Подготовка кластера
## 1.
Для этого запускаем скрипт `setup.sh`, перед запуском `<Ваш номер логина> меняем на свой номер студента!!`.
```bash
bash setup.sh xpaste development
```
В конце своего выполнения скрипт выдаст нам токен, который необходимо сохранить.
## 2. Создание variables в gitlab
Для доступа из Gitlab в Kubernetes нам необходимо добавить в Gitlab переменную, в которой будет содержаться токен с предыдущего шага.
* Переходим в Gitlab
Для этого открываем в браузере свой форк xpaste.
* Добавляем переменную
Для этого в левом меню находим `Settings -> CI/CD -> Variables` и нажимаем Expand. Жмем кнопку `Add Variable` и в поле `Key` вводим имя переменной:
```bash
K8S_DEV_CI_TOKEN
```
В поле `Value` вводим скопированный токен из вывода команды setup.sh (пункт 1) и нажимаем `Add Variable`.
## 3. Создаем token для доступа в registry
Для этого переходим в раздел `Settings -> Repository -> Deploy tokens` и нажимаем Expand.
В поле `Name` вводим
```bash
k8s-pull-token
```
Cтавим галочку рядом с `read_registry`. Все остальные поля оставляем пустыми. Нажимаем `Create deploy token`.
```!!НЕ ЗАКРЫВАЕМ ОКНО БРАУЗЕРА!!```
## 4. Создаем secret в kubernetes
Создаем secret, который будет использоваться для image pull. Для этого возвращаемся на первый master и выполняем команду:
Вносим нужные данные в скрипт `docker_pull_secret.sh` и запускаем его:
Соответственно подставляя на место `<>` нужные параметры, которые получили на `шаге 3`.
```bash
vim docker_pull_secret.sh
./docker_pull_secret.sh
```
## 6. Создание секрета для приложения
Создаем секрет, из которого при деплое будут взяты значения для переменных окружения, таких как доступы к БД и секретный ключ.
Вносим нужные данные в скрипт xpaste_secret.sh и запускаем его:
```bash
vim xpaste_secret.sh
./xpaste_secret.sh
```
`secret-key-base xxxxxxxxxxxxx` это не плэйсхолдер. Можно так и оставить.