From 527dadb678756dc4316140b515f5e9e992306e08 Mon Sep 17 00:00:00 2001 From: William Valentin Date: Tue, 24 Feb 2026 22:17:48 -0800 Subject: [PATCH] chore(makefile): add docker compose dependency targets --- Makefile | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 79 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 7a87609..8ebe886 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # Flynn Makefile # Self-hosted personal AI agent -.PHONY: build dev start stop restart status logs tui tui-fs tui-dev test test-run lint typecheck check help deps install daemon-start daemon-stop daemon-restart daemon-status daemon-logs enable disable llama-start llama-stop llama-restart llama-status llama-logs llama-enable llama-disable llamacpp-start llamacpp-stop llamacpp-restart llamacpp-status llamacpp-logs llamacpp-enable llamacpp-disable ollama-start ollama-stop ollama-restart ollama-status ollama-logs ollama-enable ollama-disable skills-list skills-info skills-install skills-uninstall skills-refresh +.PHONY: build dev start stop restart status logs tui tui-fs tui-dev test test-run lint typecheck check help deps install daemon-start daemon-stop daemon-restart daemon-status daemon-logs enable disable llama-start llama-stop llama-restart llama-status llama-logs llama-enable llama-disable llamacpp-start llamacpp-stop llamacpp-restart llamacpp-status llamacpp-logs llamacpp-enable llamacpp-disable ollama-start ollama-stop ollama-restart ollama-status ollama-logs ollama-enable ollama-disable compose-up compose-down compose-restart compose-logs compose-ps compose-pull whisper-start whisper-stop whisper-restart whisper-logs brave-start brave-stop brave-restart brave-logs searxng-start searxng-stop searxng-restart searxng-logs skills-list skills-info skills-install skills-uninstall skills-refresh # Default target .DEFAULT_GOAL := help @@ -120,6 +120,84 @@ restart: daemon-restart ## Alias for daemon-restart status: daemon-status ## Alias for daemon-status logs: daemon-logs ## Alias for daemon-logs +# Docker Compose dependencies +compose-up: ## Start docker-compose services (usage: make compose-up [SERVICE=name] [PROFILE=name]) + @set -e; \ + if [ -n "$(SERVICE)" ]; then \ + docker compose -f docker-compose.yml up -d "$(SERVICE)"; \ + elif [ -n "$(PROFILE)" ]; then \ + docker compose -f docker-compose.yml --profile "$(PROFILE)" up -d; \ + else \ + docker compose -f docker-compose.yml up -d; \ + fi + +compose-down: ## Stop docker-compose services and remove containers + docker compose -f docker-compose.yml down + +compose-restart: ## Restart docker-compose services (usage: make compose-restart [SERVICE=name]) + @set -e; \ + if [ -n "$(SERVICE)" ]; then \ + docker compose -f docker-compose.yml restart "$(SERVICE)"; \ + else \ + docker compose -f docker-compose.yml restart; \ + fi + +compose-logs: ## Stream docker-compose logs (usage: make compose-logs [SERVICE=name]) + @set -e; \ + if [ -n "$(SERVICE)" ]; then \ + docker compose -f docker-compose.yml logs -f "$(SERVICE)"; \ + else \ + docker compose -f docker-compose.yml logs -f; \ + fi + +compose-ps: ## Show docker-compose service status + docker compose -f docker-compose.yml ps + +compose-pull: ## Pull latest docker-compose images (usage: make compose-pull [SERVICE=name]) + @set -e; \ + if [ -n "$(SERVICE)" ]; then \ + docker compose -f docker-compose.yml pull "$(SERVICE)"; \ + else \ + docker compose -f docker-compose.yml pull; \ + fi + +# Docker Compose service shortcuts +whisper-start: ## Start whisper-server compose dependency + docker compose -f docker-compose.yml --profile voice up -d whisper-server + +whisper-stop: ## Stop whisper-server compose dependency + docker compose -f docker-compose.yml stop whisper-server + +whisper-restart: ## Restart whisper-server compose dependency + docker compose -f docker-compose.yml restart whisper-server + +whisper-logs: ## Stream whisper-server compose logs + docker compose -f docker-compose.yml logs -f whisper-server + +brave-start: ## Start brave-search compose dependency + docker compose -f docker-compose.yml --profile search up -d brave-search + +brave-stop: ## Stop brave-search compose dependency + docker compose -f docker-compose.yml stop brave-search + +brave-restart: ## Restart brave-search compose dependency + docker compose -f docker-compose.yml restart brave-search + +brave-logs: ## Stream brave-search compose logs + docker compose -f docker-compose.yml logs -f brave-search + +searxng-start: ## Start searxng compose dependency + docker compose -f docker-compose.yml --profile search up -d searxng + +searxng-stop: ## Stop searxng compose dependency + docker compose -f docker-compose.yml stop searxng + +searxng-restart: ## Restart searxng compose dependency + docker compose -f docker-compose.yml restart searxng + +searxng-logs: ## Stream searxng compose logs + docker compose -f docker-compose.yml logs -f searxng + # TUI commands tui: ## Run TUI in minimal mode (readline) pnpm tui