.PHONY: build up down restart logs shell clean rebuild status dev build-local

# Default target
all: up

# Build the Docker image
build:
	docker compose build

# Start the container
up:
	docker compose up -d
	@echo "Waiting for container to start..."
	@sleep 3
	docker compose logs --tail=20

# Stop the container
down:
	docker compose down

# Restart the container
restart: down up

# View logs
logs:
	docker compose logs -f

# View recent logs
logs-tail:
	docker compose logs --tail=50

# Shell into the container
shell:
	docker compose exec docs sh

# Clean up (remove container and image)
clean:
	docker compose down --rmi local --volumes

# Full rebuild (clean + build + up)
rebuild: clean build up

# Check status
status:
	docker compose ps
	@echo ""
	@echo "Health check:"
	@docker compose exec docs wget -q --spider http://127.0.0.1:80/ && echo "OK" || echo "FAILED"

# Dev mode (local preview without Docker)
dev:
	pnpm dev

# Build locally (for testing)
build-local:
	pnpm build
