#!/bin/bash ############################################## # Urban Lifeline - 快速启动脚本 ############################################## set -e SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd) cd "${SCRIPT_DIR}" # 颜色 GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' show_help() { echo -e "${BLUE}Urban Lifeline - 快速启动脚本${NC}" echo "" echo "用法: ./start.sh [命令]" echo "" echo "命令:" echo " up 启动所有服务" echo " up-infra 只启动基础设施 (nacos/minio/jitsi)" echo " up-serv 只启动后端服务" echo " up-web 只启动前端服务" echo " down 停止所有服务" echo " restart 重启所有服务" echo " status 查看服务状态" echo " logs 查看所有日志" echo " logs-f 实时查看日志" echo "" } case "${1:-help}" in up) echo -e "${YELLOW}启动所有服务...${NC}" docker compose --profile all up -d echo -e "${GREEN}✓ 所有服务已启动${NC}" ;; up-infra) echo -e "${YELLOW}启动基础设施...${NC}" docker compose --profile infra up -d echo -e "${GREEN}✓ 基础设施已启动${NC}" ;; up-serv) echo -e "${YELLOW}启动后端服务...${NC}" docker compose --profile serv up -d echo -e "${GREEN}✓ 后端服务已启动${NC}" ;; up-web) echo -e "${YELLOW}启动前端服务...${NC}" docker compose --profile web up -d echo -e "${GREEN}✓ 前端服务已启动${NC}" ;; down) echo -e "${YELLOW}停止所有服务...${NC}" docker compose --profile all down echo -e "${GREEN}✓ 所有服务已停止${NC}" ;; restart) echo -e "${YELLOW}重启所有服务...${NC}" docker compose --profile all down docker compose --profile all up -d echo -e "${GREEN}✓ 所有服务已重启${NC}" ;; status) docker compose ps ;; logs) docker compose logs ;; logs-f) docker compose logs -f ;; help|*) show_help ;; esac