90 lines
1.9 KiB
Markdown
90 lines
1.9 KiB
Markdown
|
||
# Table of Contents
|
||
1. [Логика доступа к контенту ](#Логика-доступа-к-контенту)
|
||
1. [Логика деплоя в куб по коммиту ](#Логика-деплоя-в-куб-по-коммиту)
|
||
|
||
|
||
Вообще суть такова:
|
||
Мы берём фласк, кидаем в контейнер, далее контейнер педалим в кубернетес в деплоймент соответствующий ветке (мастер/дев) с 2-3 подами на деплоймент, всё это должен уметь делать CI/CD
|
||
|
||
|
||
----
|
||
|
||
## Логика доступа к контенту
|
||
|
||
|
||
```mermaid
|
||
stateDiagram-v2
|
||
|
||
state USER
|
||
state inet <<join>>
|
||
|
||
state Nginx
|
||
|
||
user --> inet : internet
|
||
inet --> Nginx : router
|
||
|
||
state Kube {
|
||
|
||
NginxIngress
|
||
|
||
lbServiceMaster
|
||
lbServiceDev
|
||
|
||
|
||
state DeploymentMaster {
|
||
state "pod" as p1
|
||
state "pod" as p2
|
||
}
|
||
state DeploymentDev {
|
||
state "pod" as p1d
|
||
state "pod" as p2d
|
||
}
|
||
}
|
||
|
||
Nginx --> NginxIngress : *.board.vdk2ch.ru, www.vdk2ch.ru
|
||
|
||
NginxIngress --> lbServiceMaster : master.board.vdk2ch.ru
|
||
NginxIngress --> lbServiceDev : dev.board.vdk2ch.ru
|
||
|
||
|
||
lbServiceMaster --> DeploymentMaster
|
||
lbServiceMaster --> DeploymentMaster
|
||
|
||
lbServiceDev --> DeploymentDev
|
||
lbServiceDev --> DeploymentDev
|
||
|
||
state Minio
|
||
state Postgresql
|
||
|
||
state all_join <<join>>
|
||
|
||
p1 --> all_join
|
||
p2 --> all_join
|
||
p1d --> all_join
|
||
p2d --> all_join
|
||
|
||
p1 --> all_join
|
||
|
||
all_join --> Postgres : данные с БД
|
||
all_join --> Minio : статика
|
||
|
||
```
|
||
|
||
----
|
||
|
||
## Логика деплоя в куб по коммиту
|
||
|
||
TBA
|
||
|
||
|
||
```mermaid
|
||
stateDiagram-v2
|
||
|
||
Git
|
||
committer
|
||
Docker
|
||
Kube
|
||
Drone
|
||
|
||
``` |