feat: добавлена пометка типа операции (Build/Push) в истории сборок Dockerfile

- Добавлена колонка 'Тип' во все таблицы истории сборок
- Для push операций отображается registry вместо платформ
- Сохранение пользователя при создании push лога
- Исправлена ошибка с logger в push_docker_image endpoint
- Улучшено отображение истории сборок с визуальными индикаторами
This commit is contained in:
Сергей Антропов
2026-02-15 22:59:02 +03:00
parent 23e1a6037b
commit 1fbf9185a2
232 changed files with 38075 additions and 5 deletions

View File

@@ -0,0 +1,133 @@
# Статус развертывания веб-интерфейса
**Автор:** Сергей Антропов
**Сайт:** https://devops.org.ru
**Дата:** 2024-02-15
## ✅ Статус: РАБОТАЕТ
### Проверка работоспособности
```bash
# Health check
curl http://localhost:8000/health
# Ответ: {"status":"ok","version":"1.0.0"}
# Главная страница
curl http://localhost:8000/
# Ответ: HTML страница Dashboard
# API статистики
curl http://localhost:8000/api/v1/stats/roles
# Ответ: {"count":4}
```
### Запущенные контейнеры
```bash
docker-compose ps
```
Все контейнеры должны быть в статусе `Up`:
-`devopslab-web` - Веб-интерфейс (порт 8000)
-`devopslab-redis` - Redis (порт 6379)
-`devopslab-celery-worker` - Celery worker
-`devopslab-celery-beat` - Celery beat
## 🔧 Исправленные проблемы
### 1. Конфликт зависимостей Redis
**Проблема:** `celery[redis] 5.3.4` требует `redis <5.0.0`, но был указан `redis==5.0.1`
**Решение:** Изменена версия на `redis==4.6.0`
### 2. Ошибка импорта модулей
**Проблема:** `ModuleNotFoundError: No module named 'app'`
**Решение:**
- Изменена структура в Dockerfile: файлы копируются в `/app/app/`
- Добавлен `PYTHONPATH=/app` в переменные окружения
- Изменена команда запуска на `python -m uvicorn app.main:app`
- Создан `app/app/__init__.py` для правильного пакета
### 3. Команды Celery
**Проблема:** Celery не мог найти модуль tasks
**Решение:** Изменены команды на `celery -A app.tasks.celery_tasks`
## 📋 Структура в контейнере
```
/app/ # Рабочая директория
├── app/ # Пакет приложения
│ ├── __init__.py
│ ├── main.py # Точка входа (было в корне)
│ ├── api/
│ ├── core/
│ ├── models/
│ ├── services/
│ ├── templates/
│ ├── static/
│ ├── tasks/
│ └── db/
├── logs/ # Логи
└── requirements.txt
```
## 🚀 Команды для работы
```bash
# Запуск
cd app
make up
# или
docker-compose up -d
# Остановка
make down
# или
docker-compose down
# Логи
make logs
# или
docker-compose logs -f web
# Shell в контейнере
make shell
# или
docker-compose exec web bash
# Статус
make status
# или
docker-compose ps
```
## 🌐 Доступ
- **Веб-интерфейс:** http://localhost:8000
- **API документация:** http://localhost:8000/api/docs
- **ReDoc:** http://localhost:8000/api/redoc
- **Health check:** http://localhost:8000/health
## ✅ Проверка работоспособности
1. ✅ Контейнеры запускаются
2.Веб-интерфейс отвечает на запросы
3. ✅ API endpoints работают
4. ✅ Redis подключен
5. ✅ Celery worker запущен
6. ✅ Доступ к Docker socket работает
7. ✅ Монтирование проекта работает
## 📝 Следующие шаги
1. Реализовать список ролей
2. Реализовать создание роли
3. Реализовать тестирование с live логами
4. Добавить базу данных для истории
---
**Статус:** ✅ Готово к разработке