Files
dbstorage/Makefile

100 lines
2.9 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 " make dev-up - Запустить development окружение"
@echo " make dev-down - Остановить development окружение"
@echo " make dev-build - Пересобрать development контейнеры"
@echo " make dev-logs - Показать логи development"
@echo " make prod-up - Запустить production окружение"
@echo " make prod-down - Остановить production окружение"
@echo " make prod-build - Пересобрать production контейнеры"
@echo " make prod-logs - Показать логи production"
@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