66 lines
2.0 KiB
Bash
Executable File
66 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
||
# 管理会计OS — 环境自检脚本
|
||
set -e
|
||
|
||
echo "===== CMA 环境自检 ====="
|
||
echo ""
|
||
|
||
# 1. 后端服务
|
||
echo "[1] 后端服务"
|
||
if systemctl is-active cma-backend &>/dev/null; then
|
||
echo " ✓ cma-backend 运行中"
|
||
else
|
||
echo " ✗ cma-backend 未运行"
|
||
fi
|
||
|
||
# 2. Nginx
|
||
echo "[2] Nginx"
|
||
if nginx -t 2>&1 | grep -q "successful"; then
|
||
echo " ✓ Nginx 配置正确"
|
||
else
|
||
echo " ✗ Nginx 配置有误"
|
||
fi
|
||
|
||
# 3. 数据库
|
||
echo "[3] 数据库"
|
||
# 2026-09-12 凭据治理:账号必须与口令同源(backend/.env 已切 cma_api),禁止硬编码账号名
|
||
CMA_DB_USER="${CMA_DB_USER:-$(grep -m1 '^CMA_DB_USER=' /root/cma-management/backend/.env 2>/dev/null | cut -d= -f2- | tr -d '"')}"
|
||
CMA_DB_PASS="${CMA_DB_PASS:-$(grep -m1 '^CMA_DB_PASS=' /root/cma-management/backend/.env 2>/dev/null | cut -d= -f2- | tr -d '"')}"
|
||
if [ -z "$CMA_DB_USER" ] || [ -z "$CMA_DB_PASS" ]; then
|
||
echo " ! 未取到 CMA_DB_USER/PASS(2026-09-12 凭据治理:无明文兜底),跳过直连自检"
|
||
elif mysql -u"$CMA_DB_USER" -p"$CMA_DB_PASS" -h127.0.0.1 cma -e "SELECT 1;" &>/dev/null; then
|
||
echo " ✓ MariaDB 连接正常"
|
||
else
|
||
echo " ✗ MariaDB 连接失败"
|
||
fi
|
||
|
||
# 4. API 检查
|
||
echo "[4] API 端点"
|
||
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" http://127.0.0.1:8010/health 2>/dev/null || echo "000")
|
||
if [ "$HTTP_CODE" = "200" ]; then
|
||
echo " ✓ API /health 返回 200"
|
||
else
|
||
echo " ✗ API /health 返回 $HTTP_CODE"
|
||
fi
|
||
|
||
# 5. 线上前端
|
||
echo "[5] 线上前端"
|
||
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" https://cma.sxbh.ltd/ 2>/dev/null || echo "000")
|
||
if [ "$HTTP_CODE" = "200" ]; then
|
||
echo " ✓ https://cma.sxbh.ltd 返回 200"
|
||
else
|
||
echo " ✗ https://cma.sxbh.ltd 返回 $HTTP_CODE"
|
||
fi
|
||
|
||
# 6. 线上 API
|
||
echo "[6] 线上 API"
|
||
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" https://cma.sxbh.ltd/api/cma/users 2>/dev/null || echo "000")
|
||
if [ "$HTTP_CODE" = "200" ]; then
|
||
echo " ✓ /api/cma/users 返回 200"
|
||
else
|
||
echo " ✗ /api/cma/users 返回 $HTTP_CODE"
|
||
fi
|
||
|
||
echo ""
|
||
echo "===== 自检完成 ====="
|