mirror of
https://github.com/Dvorinka/excalidraw-full.git
synced 2026-06-03 22:02:57 +00:00
64 lines
1.3 KiB
Bash
64 lines
1.3 KiB
Bash
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
# 检查环境变量
|
|
if [ -z "$ADMIN_PASSWORD" ]; then
|
|
echo "错误: 请设置 ADMIN_PASSWORD 环境变量"
|
|
exit 1
|
|
fi
|
|
|
|
# 生成密码哈希
|
|
echo "正在生成密码哈希..."
|
|
PASSWORD_HASH=$(docker run --rm dexidp/dex:v2.38.0 hash --password="$ADMIN_PASSWORD")
|
|
|
|
# 创建临时配置文件
|
|
cat > /tmp/dex-init-config.yml << EOF
|
|
issuer: http://localhost:5556
|
|
|
|
storage:
|
|
type: sqlite3
|
|
config:
|
|
file: /var/lib/dex/dex.db
|
|
|
|
web:
|
|
http: 0.0.0.0:5556
|
|
|
|
logger:
|
|
level: info
|
|
|
|
enablePasswordDB: true
|
|
|
|
staticPasswords:
|
|
- email: ${ADMIN_EMAIL:-admin@example.com}
|
|
hash: $PASSWORD_HASH
|
|
username: ${ADMIN_USERNAME:-admin}
|
|
userID: "admin-001"
|
|
EOF
|
|
|
|
# 初始化 Dex 数据库
|
|
echo "正在初始化 Dex 数据库..."
|
|
docker run --rm \
|
|
-v $(pwd)/config/dex.config.yml:/etc/dex/config.yml \
|
|
-v dex-data:/var/lib/dex \
|
|
dexidp/dex:v2.38.0 \
|
|
serve /etc/dex/config.yml &
|
|
DEX_PID=$!
|
|
|
|
# 等待 Dex 启动
|
|
echo "等待 Dex 启动..."
|
|
sleep 10
|
|
|
|
# 停止临时 Dex 进程
|
|
kill $DEX_PID 2>/dev/null || true
|
|
|
|
echo "Dex 用户初始化完成!"
|
|
echo "管理员账户:"
|
|
echo " 用户名: ${ADMIN_USERNAME:-admin}"
|
|
echo " 邮箱: ${ADMIN_EMAIL:-admin@example.com}"
|
|
echo " 密码: $ADMIN_PASSWORD"
|
|
echo ""
|
|
echo "请使用以下凭据登录:"
|
|
echo " Dex UI: http://localhost:5556"
|
|
echo " 用户名: ${ADMIN_USERNAME:-admin}"
|
|
echo " 密码: $ADMIN_PASSWORD" |