138 lines
4.2 KiB
Makefile
138 lines
4.2 KiB
Makefile
.PHONY: help dev-up dev-down dev-build dev-logs prod-up prod-down prod-build prod-logs shell migrate createsuperuser clean
|
|
|
|
help:
|
|
@echo "Доступные команды:"
|
|
@echo ""
|
|
@echo "Development:"
|
|
@echo " make dev-up - Запустить development окружение"
|
|
@echo " make dev-down - Остановить development окружение"
|
|
@echo " make dev-build - Пересобрать development контейнеры"
|
|
@echo " make dev-logs - Показать логи development"
|
|
@echo ""
|
|
@echo "Production:"
|
|
@echo " make prod-up - Запустить production окружение"
|
|
@echo " make prod-down - Остановить production окружение"
|
|
@echo " make prod-build - Пересобрать production контейнеры"
|
|
@echo " make prod-logs - Показать логи production"
|
|
@echo ""
|
|
@echo "Celery (Production):"
|
|
@echo " make prod-worker-logs - Логи Celery worker"
|
|
@echo " make prod-beat-logs - Логи Celery beat"
|
|
@echo " make prod-celery-status - Статус Celery"
|
|
@echo " make prod-celery-test - Тест Celery подключения"
|
|
@echo ""
|
|
@echo "Django:"
|
|
@echo " make shell - Открыть Django shell"
|
|
@echo " make migrate - Выполнить миграции"
|
|
@echo " make createsuperuser - Создать суперпользователя"
|
|
@echo " make clean - Удалить все контейнеры и volumes"
|
|
|
|
# Development команды
|
|
dev-up:
|
|
docker-compose up -d
|
|
|
|
dev-down:
|
|
docker-compose down
|
|
|
|
dev-build:
|
|
docker-compose up -d --build
|
|
|
|
dev-logs:
|
|
docker-compose logs -f
|
|
|
|
dev-restart:
|
|
docker-compose restart web
|
|
|
|
# Production команды
|
|
prod-up:
|
|
docker-compose -f docker-compose.prod.yaml up -d
|
|
|
|
prod-down:
|
|
docker-compose -f docker-compose.prod.yaml down
|
|
|
|
prod-build:
|
|
docker-compose -f docker-compose.prod.yaml up -d --build
|
|
|
|
prod-logs:
|
|
docker-compose -f docker-compose.prod.yaml logs -f
|
|
|
|
prod-restart:
|
|
docker-compose -f docker-compose.prod.yaml restart web
|
|
|
|
# Django команды (для development по умолчанию)
|
|
shell:
|
|
docker-compose exec web python manage.py shell
|
|
|
|
migrate:
|
|
docker-compose exec web python manage.py migrate
|
|
|
|
makemigrations:
|
|
docker-compose exec web python manage.py makemigrations
|
|
|
|
createsuperuser:
|
|
docker-compose exec web python manage.py createsuperuser
|
|
|
|
collectstatic:
|
|
docker-compose exec web python manage.py collectstatic --noinput
|
|
|
|
# Для production
|
|
prod-shell:
|
|
docker-compose -f docker-compose.prod.yaml exec web python manage.py shell
|
|
|
|
prod-migrate:
|
|
docker-compose -f docker-compose.prod.yaml exec web python manage.py migrate
|
|
|
|
prod-createsuperuser:
|
|
docker-compose -f docker-compose.prod.yaml exec web python manage.py createsuperuser
|
|
|
|
# Backup и восстановление
|
|
backup:
|
|
docker-compose exec db pg_dump -U geralt geodb > backup_$(shell date +%Y%m%d_%H%M%S).sql
|
|
|
|
restore:
|
|
@read -p "Введите имя файла backup: " file; \
|
|
docker-compose exec -T db psql -U geralt geodb < $$file
|
|
|
|
# Очистка
|
|
clean:
|
|
docker-compose down -v
|
|
docker system prune -f
|
|
|
|
clean-all:
|
|
docker-compose down -v
|
|
docker-compose -f docker-compose.prod.yaml down -v
|
|
docker system prune -af --volumes
|
|
|
|
# Проверка статуса
|
|
status:
|
|
docker-compose ps
|
|
|
|
prod-status:
|
|
docker-compose -f docker-compose.prod.yaml ps
|
|
|
|
# Celery команды для production
|
|
prod-worker-logs:
|
|
docker-compose -f docker-compose.prod.yaml logs -f worker
|
|
|
|
prod-beat-logs:
|
|
docker-compose -f docker-compose.prod.yaml logs -f beat
|
|
|
|
prod-celery-status:
|
|
docker-compose -f docker-compose.prod.yaml exec web uv run celery -A dbapp inspect active
|
|
|
|
prod-celery-test:
|
|
docker-compose -f docker-compose.prod.yaml exec web uv run python test_celery.py
|
|
|
|
prod-redis-test:
|
|
docker-compose -f docker-compose.prod.yaml exec web uv run python check_redis.py
|
|
|
|
# Celery команды для development
|
|
celery-status:
|
|
cd dbapp && uv run celery -A dbapp inspect active
|
|
|
|
celery-test:
|
|
cd dbapp && uv run python test_celery.py
|
|
|
|
redis-test:
|
|
cd dbapp && uv run python check_redis.py
|