SHELL := /bin/zsh COMPOSE_FILE := docker-compose.yml PROJECT_NAME := diyaa .PHONY: start stop restart logs ps build ensure-env ensure-project ensure-env: @if [ ! -f .env ]; then \ if [ -f .env.example ]; then \ cp .env.example .env; \ echo ".env created from .env.example"; \ else \ echo ".env file is missing and .env.example was not found."; \ exit 1; \ fi; \ fi ensure-project: ensure-env @grep -q '^COMPOSE_PROJECT_NAME=$(PROJECT_NAME)$$' .env || \ (echo "COMPOSE_PROJECT_NAME in .env must be '$(PROJECT_NAME)' to avoid project mix-up."; exit 1) start: ensure-project docker compose --env-file .env -f $(COMPOSE_FILE) up -d --build @echo "diyaa services are up" stop: ensure-project docker compose --env-file .env -f $(COMPOSE_FILE) down restart: stop start logs: ensure-project docker compose --env-file .env -f $(COMPOSE_FILE) logs -f --tail=200 ps: ensure-project docker compose --env-file .env -f $(COMPOSE_FILE) ps build: ensure-project docker compose --env-file .env -f $(COMPOSE_FILE) build