n8n_node_librebooking/quick-install.sh

72 lines
2.1 KiB
Bash
Executable File

#!/bin/bash
# ============================================================================
# quick-install.sh - Schnellste Installation des LibreBooking n8n Nodes
#
# EMPFOHLENE METHODE: Auf dem Host bauen, in Container kopieren
# ============================================================================
set -e
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'
CONTAINER_NAME="${1:-n8n}"
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
echo -e "${GREEN}=== LibreBooking Quick Install ===${NC}\n"
# Prüfe Voraussetzungen
if ! command -v node &>/dev/null; then
echo -e "${RED}Fehler: Node.js nicht installiert!${NC}"
echo "Installieren: https://nodejs.org/ (v18+)"
exit 1
fi
if ! command -v docker &>/dev/null; then
echo -e "${RED}Fehler: Docker nicht installiert!${NC}"
exit 1
fi
if ! docker ps | grep -q "$CONTAINER_NAME"; then
echo -e "${YELLOW}Warnung: Container '$CONTAINER_NAME' nicht gefunden oder läuft nicht.${NC}"
echo "Verfügbare Container:"
docker ps --format " {{.Names}}"
exit 1
fi
cd "$SCRIPT_DIR"
# 1. Dependencies installieren
echo "[1/4] Installiere Dependencies..."
npm install --silent
# 2. Bauen
echo "[2/4] Baue Node..."
npm run build --silent
# 3. In Container kopieren
echo "[3/4] Kopiere in Container '$CONTAINER_NAME'..."
# Erstelle Zielverzeichnis falls nötig
docker exec "$CONTAINER_NAME" mkdir -p /home/node/.n8n/custom/n8n-nodes-librebooking 2>/dev/null || true
# Kopiere Dateien
docker cp dist "$CONTAINER_NAME":/home/node/.n8n/custom/n8n-nodes-librebooking/
docker cp package.json "$CONTAINER_NAME":/home/node/.n8n/custom/n8n-nodes-librebooking/
docker cp node_modules "$CONTAINER_NAME":/home/node/.n8n/custom/n8n-nodes-librebooking/
# 4. Container neustarten
echo "[4/4] Starte Container neu..."
docker restart "$CONTAINER_NAME"
echo ""
echo -e "${GREEN}✓ Installation abgeschlossen!${NC}"
echo ""
echo "Nächste Schritte:"
echo " 1. Öffne n8n: http://localhost:5678"
echo " 2. Gehe zu: Einstellungen → Credentials → Add Credential"
echo " 3. Suche: 'LibreBooking API'"
echo ""