OpenWebUI-Monitor / start.sh
3v324v23's picture
all
4c2a557
#!/bin/sh
# 如果使用外部数据库,等待外部 PostgreSQL 服务启动
echo "Waiting for PostgreSQL to start..."
while ! nc -z ${POSTGRES_HOST:-db} ${POSTGRES_PORT:-5432}; do
sleep 1
done
echo "PostgreSQL is up!"
# 创建数据库(如果不存在)
echo "Creating database if not exists..."
PGPASSWORD=${POSTGRES_PASSWORD} psql -h ${POSTGRES_HOST:-db} -p ${POSTGRES_PORT:-5432} -U ${POSTGRES_USER:-postgres} -tc "SELECT 1 FROM pg_database WHERE datname = '${POSTGRES_DATABASE:-openwebui_monitor}'" | grep -q 1 || \
PGPASSWORD=${POSTGRES_PASSWORD} psql -h ${POSTGRES_HOST:-db} -p ${POSTGRES_PORT:-5432} -U ${POSTGRES_USER:-postgres} -c "CREATE DATABASE ${POSTGRES_DATABASE:-openwebui_monitor}"
echo "Database setup completed!"
# 等待新创建的数据库准备就绪
sleep 2
# 初始化数据库表
echo "Initializing database tables..."
pnpm db:push
# 启动应用
echo "Starting application..."
pnpm start