Files
datahub/deploy/podman/scripts/setup-data-dirs.sh
T

39 lines
1.1 KiB
Bash
Raw Normal View History

2026-05-11 10:41:36 +08:00
#!/usr/bin/env bash
# 创建宿主机数据目录 /var/container/data/datahub/
# 所有运行期产物(数据卷 + env 配置)统一放在此根目录下
#
# 用法:bash setup-data-dirs.sh
set -euo pipefail
DATA_BASE=/var/container/data/datahub
SUBDIRS=(postgres rabbitmq backend-runtime env)
# 1. 父目录需要 root 创建并把所有权移交给当前用户
if [ ! -d "$DATA_BASE" ]; then
echo "[*] $DATA_BASE 不存在,需要 sudo 创建"
sudo mkdir -p "$DATA_BASE"
sudo chown "$USER:$USER" "$DATA_BASE"
fi
# 2. 创建子目录
for d in "${SUBDIRS[@]}"; do
full="$DATA_BASE/$d"
if [ -d "$full" ]; then
echo "[=] $full 已存在,跳过"
else
mkdir -p "$full"
echo "[+] 创建 $full"
fi
done
echo
echo "完成。当前结构:"
ls -la "$DATA_BASE"
echo
echo "说明:"
echo " - postgres / rabbitmq 目录在容器首次启动时由 podman 自动 chown 给容器内用户(:U 标志)"
echo " - backend-runtime 容器以 root 运行,无需额外 chown"
echo " - env/ 存放 datahub-backend.env / datahub-frontend.env(由 configure-env.sh 生成)"