Files
2025-11-11 11:47:15 +01:00

57 lines
1.2 KiB
Bash

#!/usr/bin/env bash
set -euo pipefail
if ask_to_install "Budibase Server"; then
echo "=== BUDIBASE INSTALLATION ==="
ensure_root
detect_pkg_manager
install_docker
echo "[+] Erstelle Verzeichnis: /srv/docker/budibase"
$SUDO mkdir -p /srv/docker/budibase
cd /srv/docker/budibase
# Funktion für automatisches Finden des nächsten freien Ports
find_free_port() {
PORT=10000
while ss -lnt | awk '{print $4}' | grep -q ":$PORT$"; do
PORT=$((PORT + 1))
done
echo "$PORT"
}
FREE_PORT=$(find_free_port)
echo "✅ Freier Port gefunden: $FREE_PORT"
echo "[+] Schreibe docker-compose.yml"
$SUDO tee docker-compose.yml >/dev/null <<EOF
services:
budibase:
image: budibase/budibase:latest
container_name: budibase-$FREE_PORT
restart: unless-stopped
ports:
- "$FREE_PORT:80"
environment:
- JWT_SECRET=changeme
- MINIO_ACCESS_KEY=budibase
- MINIO_SECRET_KEY=budibase_secret
volumes:
- budibase_data:/data
volumes:
budibase_data:
EOF
echo "[+] Starte Budibase..."
$SUDO docker compose up -d
echo ""
echo "✅ Budibase ist installiert!"
echo "→ Öffne im Browser: http://<IP>:$FREE_PORT"
else
log "${YELLOW}⏭ Budibase Server übersprungen.${NC}"
fi