Phase 0: infra fixes (OCR dir, port conflict, systemd services) Phase 1: video PII masking (frame_redactor, privacy API) Phase 2: AI privacy gateway (mitmproxy addon, audit logger) Phase 3: AI routing (Ollama backend, memory admin endpoints) Phase 4: deployment scripts and Makefile
50 lines
1.8 KiB
Makefile
50 lines
1.8 KiB
Makefile
DEVICE_IP ?= 192.168.123.181
|
|
DEVICE_USER ?= pi
|
|
SSH := sshpass -p pi ssh -o StrictHostKeyChecking=no $(DEVICE_USER)@$(DEVICE_IP)
|
|
|
|
.PHONY: deploy-gateway deploy-memory deploy-all status logs help
|
|
|
|
help:
|
|
@echo "KVM-Privacy Hub 部署工具"
|
|
@echo ""
|
|
@echo " make deploy-gateway 安装 Privacy Gateway (mitmproxy)"
|
|
@echo " make deploy-memory 部署 mem-bridge 服务"
|
|
@echo " make deploy-all 完整部署 (gateway + memory + Ollama)"
|
|
@echo " make status 查看所有服务状态"
|
|
@echo " make logs SVC=<name> 查看指定服务日志"
|
|
@echo ""
|
|
@echo "变量: DEVICE_IP=$(DEVICE_IP) DEVICE_USER=$(DEVICE_USER)"
|
|
|
|
deploy-gateway:
|
|
DEVICE_IP=$(DEVICE_IP) DEVICE_USER=$(DEVICE_USER) bash scripts/setup_gateway.sh
|
|
|
|
deploy-memory:
|
|
@echo "=== 部署 mem-bridge 服务 ==="
|
|
sshpass -p pi scp -o StrictHostKeyChecking=no \
|
|
deploy/systemd/mem-bridge-memory.service \
|
|
deploy/systemd/mem-bridge-router.service \
|
|
$(DEVICE_USER)@$(DEVICE_IP):/tmp/
|
|
$(SSH) "echo '123123' | sudo -S cp /tmp/mem-bridge-*.service /etc/systemd/system/ && \
|
|
sudo systemctl daemon-reload && \
|
|
sudo systemctl enable --now mem-bridge-memory mem-bridge-router"
|
|
@echo "mem-bridge 服务已启动"
|
|
|
|
deploy-all: deploy-gateway deploy-memory
|
|
DEVICE_IP=$(DEVICE_IP) DEVICE_USER=$(DEVICE_USER) bash scripts/install_ollama.sh
|
|
@echo "=== 完整部署完成 ==="
|
|
|
|
status:
|
|
@echo "=== KVM-Privacy Hub 服务状态 ==="
|
|
$(SSH) "systemctl is-active kvm-server info-privacy mem-bridge-memory mem-bridge-router privacy-gateway 2>/dev/null | paste - - - - - | column -t" || true
|
|
@echo ""
|
|
@echo "=== 端口监听 ==="
|
|
$(SSH) "ss -tlnp | grep -E '8080|8000|8001|8002|8888' || echo '无监听端口'"
|
|
|
|
logs:
|
|
$(SSH) "journalctl -u $(SVC) -n 50 --no-pager"
|
|
|
|
clean:
|
|
@echo "清理本地临时文件"
|
|
find . -name '*.pyc' -delete
|
|
find . -name '__pycache__' -type d -exec rm -rf {} + 2>/dev/null || true
|