Skip to content

Allower9/Deploying-Frontend-apps

Repository files navigation

Deploying-Frontend-apps-

Deploying Frontend Apps: React + Nginx + CI/CD 🚀

📦 Технологический стек

Frontend

  • React + Vite + TypeScript

Backend

  • FastAPI (в разработке)

База данных

  • PostgreSQL (в разработке)

DevOps

  • Docker, Docker Compose
  • GitHub Actions (CI/CD)
  • Nginx (сейчас не используется)

Хостинг

  • Yandex Cloud
  • Домен: allower.ru
  • Network Load Balancer → (в разработке переход на L7)

🛠️ Этапы развертывания

1. Настройка серверов

  • Сервера на Ubuntu Сервера

2. Установка необходимого ПО

bash apt install nginx docker

  1. Nginx только для проверок! systemctl start nginx , в базе systemctl stop nginx and systemctl disable nginx
  2. Работа с VPC Создана VPC → allower-net

Создана подсеть → allower-pod-net VPC

  1. Объединение узлов Все узлы включены в одну подсеть allower-pod-net

  2. Создание целевой группы https://github.com/user-attachments/assets/b5736c37-ee74-4067-913c-683c92184fa9

  3. Настройка Load Balancer Создан Network Load Balancer в своей сети

Load Balancer
  1. Локальная проверка Проверка работоспособности через Nginx ✅

  2. Покупка и настройка домена Приобретен домен allower.ru

Настроены DNS-серверы Yandex

  1. Настройка DNS-записи Создана зона в Yandex Cloud

Добавлена запись типа A с IPv4 Load Balancer

  1. Результат 455732448-641db5c1-fc53-4974-b549-1b8d59775cb1

12. Создадим сертификат SSL от LETS_ENCRYPT в самом яндексе

  • так по интрукции добавить запись в dns

13. создаем L7 балансер через визард

создадим либо до либо уже при самой настройки целевые узлы (

telegram-cloud-photo-size-2-5382270299304751738-y

14. группа бэкэндов ( можно создать также до )

telegram-cloud-photo-size-2-5382270299304751735-y

15. создадим роутер

telegram-cloud-photo-size-2-5382270299304751732-y

16. создадим обработчик

telegram-cloud-photo-size-2-5382270299304751728-y

17. Итог

2025-06-29 00 12 49

окончательно перешел на docker-compose, в следствие появилась система мониторинга Prometheus + Grafana

  • тут настройка ( просто скачал утилиту Prometheus и добавил в Dashdboards ) telegram-cloud-photo-size-2-5406967052746488988-y

вот фрагмент

telegram-cloud-photo-size-2-5406967052746488993-y

Итоговый итог )

image

🔜 Планы по развитию В разработке: Добавление SSL-сертификата при переходе на L7 Load Balancer ✅

Миграция на docker-compose ✅

Интеграция Grafana и Prometheus для мониторинга ✅

  • бд -

  • backend -

  • добавить FastCGI к nginx


    Что бы просто поднять на сервере ---> поставить docker, запулить код, docker-compose up -d

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors