65 lines
2.2 KiB
Makefile
65 lines
2.2 KiB
Makefile
.PHONY: install dev prod stop logs remove auth sync searxng ollama
|
|
|
|
COMPOSE = docker compose
|
|
|
|
auth:
|
|
@mkdir -p .claude-data storage projects
|
|
@chown -R 1000:1000 .claude-data storage projects
|
|
@grep -q "^CLAUDE_CODE_OAUTH_TOKEN=.\+" .env 2>/dev/null \
|
|
|| echo "WARNUNG: CLAUDE_CODE_OAUTH_TOKEN fehlt in .env (Claude-Provider inaktiv)."
|
|
@grep -q "^MINIMAX_API_KEY=.\+" .env 2>/dev/null \
|
|
|| echo "WARNUNG: MINIMAX_API_KEY fehlt in .env (MiniMax-Provider inaktiv)."
|
|
@echo "Verzeichnisse angelegt und auf uid 1000 chowned."
|
|
|
|
install:
|
|
pip install --break-system-packages fastapi uvicorn[standard] aiosqlite uv
|
|
cd frontend && npm install
|
|
npm install -g opencode-ai
|
|
@mkdir -p $(HOME)/.config/opencode
|
|
@ln -sfn $(CURDIR)/dev-ops/opencode.json $(HOME)/.config/opencode/opencode.json
|
|
@if grep -q "^MINIMAX_API_KEY=.\+" .env 2>/dev/null; then \
|
|
echo "OpenCode-Config verlinkt. MINIMAX_API_KEY aus .env wird von 'make dev' geladen."; \
|
|
else \
|
|
echo "OpenCode-Config verlinkt. MINIMAX_API_KEY noch in .env eintragen."; \
|
|
fi
|
|
|
|
dev:
|
|
@echo "Backend: http://localhost:8000"
|
|
@echo "Frontend: http://localhost:5173"
|
|
@set -a; [ -f .env ] && . ./.env; set +a; \
|
|
cd backend && uvicorn main:app --reload --port 8000 &
|
|
@cd frontend && npx vite --port 5173
|
|
|
|
prod: auth
|
|
$(COMPOSE) up -d --build
|
|
|
|
stop:
|
|
-@pkill -f "uvicorn main:app" 2>/dev/null
|
|
-@pkill -f "vite --port 5173" 2>/dev/null
|
|
$(COMPOSE) down
|
|
@echo "Server gestoppt."
|
|
|
|
logs:
|
|
$(COMPOSE) logs -f
|
|
|
|
remove: stop
|
|
@echo "Lösche Datenbank und generierte Dateien..."
|
|
rm -rf storage/*
|
|
@echo "Fertig."
|
|
|
|
searxng:
|
|
docker run -d --name searxng --restart unless-stopped -p 8888:8080 searxng/searxng
|
|
@echo "SearxNG läuft auf http://localhost:8888 (Websuche für den Lokal-Provider)."
|
|
|
|
ollama:
|
|
@which ollama >/dev/null 2>&1 || curl -fsSL https://ollama.com/install.sh | sh
|
|
ollama pull qwen3.6:27b
|
|
ollama pull qwen3.5:9b
|
|
@echo "Ollama bereit — Provider 'Lokal' ist aktiv (Modelle anpassen: backend/config.py + dev-ops/opencode.json)."
|
|
|
|
sync:
|
|
@mkdir -p storage/themen
|
|
rsync -avz --progress root@178.104.67.87:/var/www/creator/storage/creator.db storage/
|
|
rsync -avz --progress --delete root@178.104.67.87:/var/www/creator/storage/themen/ storage/themen/
|
|
@echo "Sync abgeschlossen."
|