87 lines
2.6 KiB
Bash
Executable file
87 lines
2.6 KiB
Bash
Executable file
#!/bin/bash
|
|
# ==============================================================
|
|
# BAN YARO — Ersteinrichtung auf der DiskStation
|
|
# Einmalig ausführen: bash scripts/setup-ds.sh
|
|
# ==============================================================
|
|
|
|
set -e
|
|
|
|
DS_HOST="ds"
|
|
DS_PATH="/volume1/docker/ban-yaro"
|
|
REPO_URL="ssh://git@dsm.motocamp.de:2222/rene/banyaro.git"
|
|
|
|
echo "=== Ban Yaro Setup auf DS1621 ==="
|
|
echo ""
|
|
|
|
# ----------------------------------------------------------
|
|
# 1. Verzeichnis anlegen und Repo klonen
|
|
# ----------------------------------------------------------
|
|
echo "→ Repo klonen..."
|
|
ssh "$DS_HOST" "
|
|
mkdir -p $(dirname $DS_PATH) &&
|
|
if [ -d '$DS_PATH' ]; then
|
|
echo ' Verzeichnis existiert bereits, pull statt clone.'
|
|
cd '$DS_PATH' && git pull
|
|
else
|
|
git clone '$REPO_URL' '$DS_PATH'
|
|
echo ' Geklont nach $DS_PATH'
|
|
fi
|
|
"
|
|
|
|
# ----------------------------------------------------------
|
|
# 2. .env anlegen falls nicht vorhanden
|
|
# ----------------------------------------------------------
|
|
echo "→ .env prüfen..."
|
|
ssh "$DS_HOST" "
|
|
if [ ! -f '$DS_PATH/.env' ]; then
|
|
cp '$DS_PATH/.env.example' '$DS_PATH/.env'
|
|
echo ''
|
|
echo ' ⚠️ .env wurde angelegt. Bitte jetzt anpassen:'
|
|
echo ' ssh ds && nano $DS_PATH/.env'
|
|
echo ''
|
|
echo ' Mindestens setzen:'
|
|
echo ' JWT_SECRET=<langer-zufaelliger-string>'
|
|
echo ' KI_MODE=local'
|
|
echo ' KI_LOCAL_URL=http://10.47.11.10:1234/v1'
|
|
echo ''
|
|
else
|
|
echo ' .env existiert bereits.'
|
|
fi
|
|
"
|
|
|
|
# ----------------------------------------------------------
|
|
# 3. Data-Verzeichnis mit korrekten Rechten
|
|
# ----------------------------------------------------------
|
|
echo "→ Data-Verzeichnis..."
|
|
ssh "$DS_HOST" "
|
|
mkdir -p '$DS_PATH/data/media/dogs'
|
|
mkdir -p '$DS_PATH/data/media/diary'
|
|
mkdir -p '$DS_PATH/data/media/poison'
|
|
echo ' Verzeichnisse angelegt.'
|
|
"
|
|
|
|
# ----------------------------------------------------------
|
|
# 4. Docker-Image bauen und starten
|
|
# ----------------------------------------------------------
|
|
echo "→ Docker build + start..."
|
|
ssh "$DS_HOST" "
|
|
cd '$DS_PATH' &&
|
|
sudo docker compose build &&
|
|
sudo docker compose up -d
|
|
"
|
|
|
|
# ----------------------------------------------------------
|
|
# 5. Status prüfen
|
|
# ----------------------------------------------------------
|
|
echo ""
|
|
echo "→ Status:"
|
|
ssh "$DS_HOST" "sudo docker ps --filter name=ban-yaro --format 'table {{.Names}}\t{{.Status}}\t{{.Ports}}'"
|
|
|
|
echo ""
|
|
echo "=== Setup abgeschlossen ==="
|
|
echo ""
|
|
echo "Nächste Schritte:"
|
|
echo " 1. NPM-Eintrag für banyaro.app → Port 3010"
|
|
echo " 2. Logs prüfen: make logs"
|
|
echo " 3. App aufrufen: https://banyaro.app"
|
|
echo ""
|