#!/bin/bash # 重新构建并部署 Docker 容器 # 配置从 .env 读取(参照 .env.example 创建) cd "$(dirname "$0")" set -a; source .env 2>/dev/null || { echo "缺少 .env 配置,请先参照 .env.example 创建"; exit 1; }; set +a docker rm -f electric-monitor 2>/dev/null docker build -t electric-monitor:latest . 2>&1 | tail -3 echo "=== 启动 ===" docker run -d --name electric-monitor \ -p 6983:8000 \ -e LZU_USERNAME="$LZU_USERNAME" \ -e LZU_PASSWORD="$LZU_PASSWORD" \ -e LZU_AES_KEY="$LZU_AES_KEY" \ -e LZU_MD5_KEY="$LZU_MD5_KEY" \ -e LZU_SERVICE_ID="${LZU_SERVICE_ID:-29615}" \ -e TZ=Asia/Shanghai \ -v "$(pwd)/data:/app/data" \ electric-monitor:latest sleep 8 echo "=== 容器状态 ===" docker ps --filter name=electric-monitor --format "{{.Status}}" echo "=== 内存 ===" docker stats --no-stream electric-monitor --format "MEM: {{.MemUsage}} CPU: {{.CPUPerc}}" echo "=== 日志 ===" docker logs electric-monitor 2>&1 | head -8 echo "=== API 测试 ===" curl -s --max-time 40 http://127.0.0.1:6983/api/electric echo curl -s -o /dev/null -w 'index: %{http_code}\n' http://127.0.0.1:6983/