# Переменные для путей к утилитам KIND_PATH = /home/tactile/.kind-d8/kind KUBECTL_PATH = /home/tactile/.kind-d8/kubectl .PHONY: help build-backend build-backend-dotnet build-frontend build-all load-images deploy undeploy clean help: @echo "Доступные команды:" @echo " make build-backend - Собрать Docker образ Python бэкенда" @echo " make build-backend-dotnet - Собрать Docker образ .NET бэкенда" @echo " make build-frontend - Собрать Docker образ фронтенда" @echo " make build-all - Собрать все Docker образы" @echo " make load-images - Загрузить образы в kind кластер" @echo " make deploy - Развернуть приложение в k8s" @echo " make undeploy - Удалить приложение из k8s" @echo " make clean - Очистить все ресурсы" build-backend: @echo "Сборка Python backend образа..." docker build -t python-navigator-demo-backend:latest ./backend build-backend-dotnet: @echo "Сборка .NET backend образа..." docker build -t python-navigator-demo-backend-dotnet:latest ./backend-dotnet build-frontend: @echo "Сборка frontend образа..." docker build -t python-navigator-demo-frontend:latest ./frontend build-all: build-backend build-backend-dotnet build-frontend @echo "Все образы собраны успешно!" load-images: @echo "Загрузка образов в kind кластер..." $(KIND_PATH) load docker-image python-navigator-demo-backend:latest --name d8 $(KIND_PATH) load docker-image python-navigator-demo-backend-dotnet:latest --name d8 $(KIND_PATH) load docker-image python-navigator-demo-frontend:latest --name d8 @echo "Образы загружены в kind кластер!" deploy: @echo "Развертывание приложения в Kubernetes..." $(KUBECTL_PATH) apply -k k8s/ @echo "Приложение развернуто!" @echo "Доступно по адресу: https://python-navigator-demo.127.0.0.1.sslip.io" undeploy: @echo "Удаление приложения из Kubernetes..." $(KUBECTL_PATH) delete -k k8s/ @echo "Приложение удалено!" clean: undeploy @echo "Очистка Docker образов..." docker rmi python-navigator-demo-backend:latest python-navigator-demo-backend-dotnet:latest python-navigator-demo-frontend:latest || true @echo "Очистка завершена!"