1. 排行榜悬浮窗关闭后小按钮消失问题 - 修复面板居中模式关闭时按钮位置错误 - 保存并恢复按钮的居中状态 2. 首页tag按钮按素材数量排序 - 添加按素材数量降序排序逻辑 3. 上传弹窗输入框浅色模式文字不可见 - 添加 text-slate-900 确保浅色模式下文字可见 - 添加 placeholder 样式确保占位符正确显示
53 lines
1.4 KiB
Bash
53 lines
1.4 KiB
Bash
#!/bin/sh
|
|
# Docker 容器启动脚本
|
|
#
|
|
# 功能:
|
|
# 1. 自动执行数据库迁移
|
|
# 2. 自动初始化系统数据(内置模板等)
|
|
# 3. 启动 Next.js 应用
|
|
#
|
|
# 客户无需任何手动操作,只需启动容器即可
|
|
|
|
set -e
|
|
|
|
echo "=========================================="
|
|
echo "FLNXI 素材库系统启动中..."
|
|
echo "=========================================="
|
|
|
|
# 1. 等待数据库就绪
|
|
echo "[1/3] 检查数据库连接..."
|
|
MAX_RETRIES=30
|
|
RETRY_COUNT=0
|
|
|
|
while [ $RETRY_COUNT -lt $MAX_RETRIES ]; do
|
|
if echo "SELECT 1" | npx prisma db execute --stdin > /dev/null 2>&1; then
|
|
echo "✓ 数据库连接成功"
|
|
break
|
|
fi
|
|
RETRY_COUNT=$((RETRY_COUNT + 1))
|
|
echo "等待数据库就绪... ($RETRY_COUNT/$MAX_RETRIES)"
|
|
sleep 2
|
|
done
|
|
|
|
if [ $RETRY_COUNT -eq $MAX_RETRIES ]; then
|
|
echo "✗ 数据库连接超时,请检查 DATABASE_URL 配置"
|
|
exit 1
|
|
fi
|
|
|
|
# 2. 执行数据库迁移
|
|
echo "[2/3] 执行数据库迁移..."
|
|
if npx prisma migrate deploy; then
|
|
echo "✓ 数据库迁移完成"
|
|
else
|
|
echo "⚠ 数据库迁移失败,尝试继续启动..."
|
|
fi
|
|
|
|
# 3. 启动应用(系统初始化会在首次请求时自动执行)
|
|
echo "[3/3] 启动应用服务..."
|
|
echo "=========================================="
|
|
echo "系统启动完成!"
|
|
echo "访问地址: http://localhost:${PORT:-3000}"
|
|
echo "=========================================="
|
|
|
|
exec node server.js
|