100 lines
2.9 KiB
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
|