72 lines
5.0 KiB
Markdown
Executable File
72 lines
5.0 KiB
Markdown
Executable File
# 🚀 Web Application with Docker, PostgreSQL & Flask
|
||
|
||
Простое веб-приложение с авторизацией, которое можно использовать как основу для собственного проекта.
|
||
|
||
## 🌟 Особенности проекта
|
||
|
||
- **Docker-ориентированный** (сборка через compose)
|
||
- **Безопасность**: секреты через ".env", healthcheck для БД
|
||
- **Автоматический деплой** через Git hooks
|
||
- **Логирование** операций деплоя
|
||
|
||
## 🛠 Технологический стек
|
||
|
||
- Frontend: Nginx со статическим html
|
||
- Backend: Python Flask
|
||
- DataBase: PostgreSQL
|
||
- Infrastructure: Docker, Docker Compose
|
||
- CI/CD: Git hooks
|
||
|
||
🔧 Архитектура проекта
|
||
Copy
|
||
container-web-app/
|
||
│
|
||
├── backend/
|
||
│ ├── requirements.txt
|
||
│ └── server.py
|
||
│
|
||
├── db/
|
||
│ └── init.sql
|
||
│
|
||
├── frontend/
|
||
│ ├── static/
|
||
│ └── index.html
|
||
│
|
||
├── nginx/
|
||
│ ├── ssl/
|
||
│ │ ├── domain.crt
|
||
│ │ ├── domain.conf
|
||
│ │ └── domain.key
|
||
│ └── nginx.conf
|
||
│
|
||
├── scripts/
|
||
│ └── post-receive
|
||
│
|
||
├── .env
|
||
├── docker-compose.yaml
|
||
└── README.md
|
||
🔒 Безопасность
|
||
Все секреты хранятся в .env (в git не коммитятся)
|
||
|
||
Healthcheck для мониторинга состояния PostgreSQL
|
||
|
||
## CI/CD:
|
||
|
||
Автоматический деплой через Git hooks
|
||
|
||
Скрипт деплоя с логированием (/var/log/deploy.log)
|
||
|
||
## Infrastructure as Code:
|
||
|
||
Полная воспроизводимость через Docker
|
||
|
||
Версионирование образов
|
||
|
||
## 📈 Дальнейшее развитие
|
||
- Добавить тесты (pytest)
|
||
|
||
- Настроить GitHub Actions для CI
|
||
|
||
- Реализовать балансировку нагрузки
|
||
|
||
- Добавить мониторинг (Prometheus + Grafana) |