#!/bin/bash # Ez a szkript megépíti és elindítja a Docker konténert, amiben az n8n fut. # Az n8n fogja a gemini parancsokat futtatni a konténeren belül. # A változókat a .env fájlból olvassa be. # Álljon le hibánál set -e # Docker image és konténer nevek IMAGE_NAME="panda-n8n-app" CONTAINER_NAME="panda-n8n-container" # Projekt gyökérkönyvtára PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # Ellenőrizzük, hogy létezik-e a .env fájl if [ ! -f "$PROJECT_DIR/.env" ]; then echo "HIBA: A '.env' fájl nem található a '$PROJECT_DIR' mappában." exit 1 fi # Leállítjuk és eltávolítjuk a korábbi, azonos nevű konténert, ha létezik if [ "$(docker ps -a -q -f name=$CONTAINER_NAME)" ]; then echo "A korábbi '$CONTAINER_NAME' konténer leállítása és eltávolítása..." docker stop $CONTAINER_NAME docker rm $CONTAINER_NAME fi echo "Docker image építése..." docker build -t "$IMAGE_NAME" "$PROJECT_DIR" echo "Konténer indítása háttérben (-d)..." # -d: detached mode (háttérben fut) # -p 5678:5678: Port forwardolás (host:container) # --name: A konténer elnevezése a könnyebb kezelhetőségért # --env-file: Környezeti változók betöltése a .env fájlból docker run -d \ -p 5678:5678 \ --name "$CONTAINER_NAME" \ --env-file "$PROJECT_DIR/.env" \ "$IMAGE_NAME" echo "Az n8n konténer elindult!" echo "Az n8n felülete elérhető a következő címen: http://localhost:5678" echo "A konténer logjait a 'docker logs $CONTAINER_NAME' paranccsal nézheted meg."