Технологический стек:
Backend: Python 3, Django 4, Django Rest Framework
Frontend: JavaScript, TypeScript, React + Redux
База данных: PostgreSQL
Web-сервер: Nginx
Деплой: Docker + Docker Compose
Проект размещён в приватном репозитории GitLab.
Сервер: Ubuntu 24.04 (уже установлен Docker и Nginx).
Требуется
Размещение проекта на сервере
Склонировать репозиторий с GitLab.
Разместить backend, frontend и базу данных в Docker-контейнерах с помощью docker-compose.yml.
Настроить работу приложения с PostgreSQL.
Настроить правильные пути для frontend-сборки.
Настройка Nginx при необходимости.
Настройка автоматического деплоя
Создать .gitlab-ci.yml для автоматического деплоя при пуше в основную ветку.
Реализовать процесс билда образов Docker и их перезапуска.
Настроить обновление контейнеров без прерывания работы сервиса (zero-downtime deploy).
Проверить корректность работы автоматического деплоя.
Должно получиться
[:2705] Проект развернут и доступен в браузере
[:2705] Backend корректно работает и подключается к базе данных PostgreSQL
[:2705] Frontend доступен и отображается корректно
[:2705] Nginx работает, корректно проксирует запросы и обслуживает статические файлы
[:2705] HTTPS-сертификаты установлены и обновляются автоматически
[:2705] Автоматический деплой из GitLab настроен и тестирован
Отчет по выполненным действиям.
.gitlab-ci.yml с комментариями.
Инструкцию по управлению деплоем (обновление, перезапуск, просмотр логов).