Как настроить деплой на собственный сервер (по ssh)
Подробнее про SSH провайдер можно прочитать по сслыке.
Для использования ssh необходим root пользователь
k8s (minikube)
Для настройки деплоя необходимо выставить env переменную HOSTING_PROVIDER SSH
, а также установить переменные
genesis_SSH_PRIVATE_KEY
и genesis_IP_ADDRESS
в gitlab ci variables.
Без DNS:
include:
- project: 'framework/genesis'
file: '/genesis.gitlab-ci.yml'
variables:
VERSION: *.*.* # Genesis version, вместо *.*.* необходимо подставить последнюю доступную версию/tag,
# список тэгов - https://gl.sbdagroup.com/framework/genesis/-/tags
# ex: VERSION: 0.0.1
HOSTING_PROVIDER: SSH
CONTAINER_MANAGER: k8s
IP_ADDRESS: 0.0.0.0 # можно указать в .gitlab-ci.yml, либо genesis_IP_ADDRESS в gitlab -> settings -> ci/cd -> variables
С настройкой DNS:
include:
- project: 'framework/genesis'
file: '/genesis.gitlab-ci.yml'
variables:
VERSION: *.*.* # Genesis version, вместо *.*.* необходимо подставить последнюю доступную версию/tag,
# список тэгов - https://gl.sbdagroup.com/framework/genesis/-/tags
# ex: VERSION: 0.0.1
HOSTING_PROVIDER: SSH
CONTAINER_MANAGER: k8s
DOMAIN: example.com
DNS_TOKEN: cloudflare_token
IP_ADDRESS: 0.0.0.0 # можно указать в .gitlab-ci.yml, либо genesis_IP_ADDRESS в gitlab -> settings -> ci/cd -> variables
docker-compose
Для настройки деплоя необходимо выставить env переменную HOSTING_PROVIDER SSH
, а также установить переменные
genesis_SSH_PRIVATE_KEY_branch_name
и genesis_IP_ADDRESS_branch_name
в gitlab ci variables.
Без DNS:
include:
- project: 'framework/genesis'
file: '/genesis.gitlab-ci.yml'
variables:
VERSION: *.*.* # Genesis version, вместо *.*.* необходимо подставить последнюю доступную версию/tag,
# список тэгов - https://gl.sbdagroup.com/framework/genesis/-/tags
# ex: VERSION: 0.0.1
HOSTING_PROVIDER: SSH
CONTAINER_MANAGER: docker
IP_ADDRESS: 0.0.0.0 # можно указать в .gitlab-ci.yml, либо genesis_IP_ADDRESS_branch_name в gitlab -> settings -> ci/cd -> variables
С настройкой DNS:
include:
- project: 'framework/genesis'
file: '/genesis.gitlab-ci.yml'
variables:
VERSION: *.*.* # Genesis version, вместо *.*.* необходимо подставить последнюю доступную версию/tag,
# список тэгов - https://gl.sbdagroup.com/framework/genesis/-/tags
# ex: VERSION: 0.0.1
HOSTING_PROVIDER: SSH
CONTAINER_MANAGER: docker
DOMAIN: example.com
DNS_TOKEN: cloudflare_token
IP_ADDRESS: 0.0.0.0 # можно указать в .gitlab-ci.yml, либо genesis_IP_ADDRESS_branch_name в gitlab -> settings -> ci/cd -> variables
Как запустить с использованием готового клиентского кластера k8s
Для настройки деплоя в готовый k8s кластер необходимо указать env переменную HOSTING_PROVIDER: none
,
а также установить переменную, genesis_KUBECONFIG
в gitlab ci variables.
При использовании встроенного менеджера dns записей необходимо указать env переменную
IP_ADDRESS server_ip_address
в секцию variables
c публичным ip адресом.
Без ДНС
include:
- project: 'framework/genesis'
file: '/genesis.gitlab-ci.yml'
variables:
VERSION: *.*.* # Genesis version, вместо *.*.* необходимо подставить последнюю доступную версию/tag,
# список тэгов - https://gl.sbdagroup.com/framework/genesis/-/tags
# ex: VERSION: 0.0.1
HOSTING_PROVIDER: none
CONTAINER_MANAGER: k8s
DOMAIN: example.com
С настройкой DNS:
include:
- project: 'framework/genesis'
file: '/genesis.gitlab-ci.yml'
variables:
VERSION: *.*.* # Genesis version, вместо *.*.* необходимо подставить последнюю доступную версию/tag,
# список тэгов - https://gl.sbdagroup.com/framework/genesis/-/tags
# ex: VERSION: 0.0.1
HOSTING_PROVIDER: none
CONTAINER_MANAGER: k8s
DOMAIN: example.com
DNS_TOKEN: $CLOUDFLARE_TOKEN
IP_ADDRESS: 0.0.0.0
Как настроить маршрутизацию в закрытом контуре
Для настройки маршрутизации в закрытом контуре необходимо установить переменную PATH_LIKE_DOMAIN: 1
(смотри раздел Домены->Смена формирования путей на path like).
include:
- project: 'framework/genesis'
file: '/genesis.gitlab-ci.yml'
variables:
VERSION: *.*.* # Genesis version, вместо *.*.* необходимо подставить последнюю доступную версию/tag,
# список тэгов - https://gl.sbdagroup.com/framework/genesis/-/tags
# ex: VERSION: 0.0.1
HOSTING_PROVIDER: none
CONTAINER_MANAGER: k8s
DOMAIN: example.com
DNS_TOKEN: $CLOUDFLARE_TOKEN
IP_ADDRESS: 0.0.0.0
PATH_LIKE_DOMAIN: 1