Files
datahub/deploy/podman/scripts/create-secrets.sh
T
2026-05-11 10:41:36 +08:00

58 lines
1.5 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/env bash
# 交互式创建 4 个 podman secret,供 Quadlet 单元引用
# 用法:bash create-secrets.sh
set -euo pipefail
if ! command -v podman >/dev/null 2>&1; then
echo "未检测到 podman,请先安装" >&2
exit 1
fi
create_secret() {
local name=$1
local prompt=$2
local default_cmd=${3:-}
if podman secret exists "$name" 2>/dev/null; then
read -rp "secret [$name] 已存在,是否替换?(y/N): " ans
if [[ "${ans,,}" != "y" ]]; then
echo " 跳过 $name"
return
fi
podman secret rm "$name" >/dev/null
fi
local value
if [[ -n "$default_cmd" ]]; then
read -rp "$prompt(直接回车自动生成): " -s value
echo
if [[ -z "$value" ]]; then
value=$(eval "$default_cmd")
echo " 已自动生成"
fi
else
read -rp "$prompt: " -s value
echo
if [[ -z "$value" ]]; then
echo " 值不能为空" >&2
exit 1
fi
fi
printf '%s' "$value" | podman secret create "$name" -
echo " ✓ 创建 $name"
}
echo "=== 创建 datahub podman secrets ==="
echo
create_secret datahub-pg-password "PostgreSQL datahub 用户密码"
create_secret datahub-rabbitmq-password "RabbitMQ user 用户密码"
create_secret datahub-jwt-secret "JWT 签名 secret" "openssl rand -hex 32"
create_secret datahub-tools-token "TOOLS_TOKEN(外部 store-api 鉴权 token"
echo
echo "完成。当前 secrets"
podman secret ls