#!/bin/bash echo "🔍 检查 Filament Admin 配置..." echo "" # 颜色定义 GREEN='\033[0;32m' RED='\033[0;31m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # 检查 .env 文件 echo -e "${BLUE}📋 检查 .env 文件:${NC}" if [ -f ".env" ]; then echo -e "${GREEN}✅ .env 文件存在${NC}" # 读取关键配置 APP_NAME=$(grep "^APP_NAME=" .env | cut -d '=' -f2 | tr -d '"') APP_ENV=$(grep "^APP_ENV=" .env | cut -d '=' -f2) APP_DEBUG=$(grep "^APP_DEBUG=" .env | cut -d '=' -f2) APP_URL=$(grep "^APP_URL=" .env | cut -d '=' -f2) DB_CONNECTION=$(grep "^DB_CONNECTION=" .env | cut -d '=' -f2) echo " 应用名称:${APP_NAME}" echo " 环境:${APP_ENV}" echo " 调试模式:${APP_DEBUG}" echo " 访问地址:${APP_URL}" echo " 数据库:${DB_CONNECTION}" echo "" # 验证生产环境配置 if [ "$APP_ENV" = "production" ]; then echo -e "${GREEN}✅ 生产环境配置正确${NC}" else echo -e "${YELLOW}⚠️ 建议设置 APP_ENV=production${NC}" fi if [ "$APP_DEBUG" = "false" ]; then echo -e "${GREEN}✅ 调试模式已关闭${NC}" else echo -e "${YELLOW}⚠️ 建议设置 APP_DEBUG=false${NC}" fi else echo -e "${RED}❌ .env 文件不存在${NC}" echo -e "${YELLOW}💡 请复制 .env.example 或 .env.production 为 .env${NC}" exit 1 fi echo "" # 检查数据库文件 echo -e "${BLUE}🗄️ 检查数据库:${NC}" if [ "$DB_CONNECTION" = "sqlite" ]; then if [ -f "database/database.sqlite" ]; then echo -e "${GREEN}✅ SQLite 数据库文件存在${NC}" DB_SIZE=$(du -h database/database.sqlite | cut -f1) echo " 文件大小:${DB_SIZE}" else echo -e "${YELLOW}⚠️ SQLite 数据库文件不存在,将自动创建${NC}" fi else echo -e "${BLUE}ℹ️ 使用 ${DB_CONNECTION} 数据库${NC}" fi echo "" # 检查端口 echo -e "${BLUE}🔌 检查端口 5019:${NC}" if lsof -i :5019 &> /dev/null; then echo -e "${YELLOW}⚠️ 端口 5019 已被占用${NC}" lsof -i :5019 else echo -e "${GREEN}✅ 端口 5019 可用${NC}" fi echo "" # 检查 Docker echo -e "${BLUE}🐳 检查 Docker:${NC}" if command -v docker &> /dev/null; then DOCKER_VERSION=$(docker --version) echo -e "${GREEN}✅ Docker 已安装:${DOCKER_VERSION}${NC}" else echo -e "${RED}❌ Docker 未安装${NC}" exit 1 fi echo "" # 检查 Docker Compose echo -e "${BLUE}📦 检查 Docker Compose:${NC}" if command -v docker-compose &> /dev/null; then COMPOSE_VERSION=$(docker-compose --version) echo -e "${GREEN}✅ Docker Compose 已安装:${COMPOSE_VERSION}${NC}" elif docker compose version &> /dev/null; then COMPOSE_VERSION=$(docker compose version) echo -e "${GREEN}✅ Docker Compose (v2) 已安装:${COMPOSE_VERSION}${NC}" else echo -e "${RED}❌ Docker Compose 未安装${NC}" exit 1 fi echo "" # 磁盘空间检查 echo -e "${BLUE}💾 检查磁盘空间:${NC}" DISK_SPACE=$(df -h . | awk 'NR==2 {print $4}') echo -e "${GREEN}✅ 可用空间:${DISK_SPACE}${NC}" echo "" echo -e "${GREEN}🎉 配置检查完成!${NC}" echo "" echo -e "${BLUE}📋 快速操作:${NC}" echo " 构建:${GREEN}make build${NC} 或 ${GREEN}./build.sh${NC}" echo " 部署:${GREEN}make deploy${NC} 或 ${GREEN}./deploy.sh${NC}" echo " 验证:${GREEN}make verify${NC} 或 ${GREEN}./verify.sh${NC}"