docker image kibövitése n8n -el
This commit is contained in:
@@ -1,18 +1,19 @@
|
|||||||
# 1. lépés: Melyik alap image-ből induljunk?
|
# 1. lépés: Alap image
|
||||||
FROM fedora:latest
|
FROM fedora:latest
|
||||||
|
|
||||||
# 2. lépés: Parancsok futtatása a rendszeren belül
|
# 2. lépés: Alap csomagok és NodeJS telepítése
|
||||||
# Frissítjük a csomagokat, telepítjük a nodejs-t és az npm-et, majd takarítunk
|
|
||||||
RUN dnf update -y && \
|
RUN dnf update -y && \
|
||||||
dnf install -y nodejs npm && \
|
dnf install -y nodejs npm && \
|
||||||
dnf clean all
|
dnf clean all
|
||||||
|
|
||||||
# 3. lépés: Telepítjük a @google/gemini-cli-t globálisan
|
# 3. lépés: Globális npm csomagok telepítése (gemini-cli és n8n)
|
||||||
RUN npm install -g @google/gemini-cli
|
RUN npm install -g @google/gemini-cli n8n
|
||||||
|
|
||||||
# 4. lépés (Opcionális): Beállítunk egy alapértelmezett munkakönyvtárat
|
# 4. lépés: n8n portjának dokumentálása
|
||||||
WORKDIR /app
|
EXPOSE 5678
|
||||||
|
|
||||||
# 5. lépés: Mi fusson le, ha elindul a konténer?
|
# 5. lépés: Alapértelmezett munkakönyvtár beállítása az n8n adatoknak
|
||||||
# Most már a gemini cli verzióját is kiírathatjuk
|
WORKDIR /data
|
||||||
CMD ["gemini", "--version"]
|
|
||||||
|
# 6. lépés: A konténer indítási parancsa az n8n szerver elindításához
|
||||||
|
CMD ["n8n"]
|
||||||
|
|||||||
@@ -1,33 +1,46 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Ez a szkript megépíti és elindítja a Docker konténert az API kulcsos hitelesítéssel,
|
# Ez a szkript megépíti és elindítja a Docker konténert, amiben az n8n fut.
|
||||||
# a változókat a .env fájlból olvassa be.
|
# Az n8n fogja a gemini parancsokat futtatni a konténeren belül.
|
||||||
# FIGYELEM: Az API kulcsos hitelesítés alacsonyabb limitekkel és korlátozottabb modellhozzáféréssel jár (csak Flash modellel).
|
# A változókat a .env fájlból olvassa be.
|
||||||
# Ha jobb limitekre és a teljes Gemini modellcsaládban van szükséged, használd a Google fiókos bejelentkezést.
|
|
||||||
|
|
||||||
# Álljon le hibánál
|
# Álljon le hibánál
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# Az image neve
|
# Docker image és konténer nevek
|
||||||
IMAGE_NAME="my-fedora-app"
|
IMAGE_NAME="panda-n8n-app"
|
||||||
|
CONTAINER_NAME="panda-n8n-container"
|
||||||
|
|
||||||
# A projekt gyökérkönyvtára (ahol ez a szkript van)
|
# Projekt gyökérkönyvtára
|
||||||
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
|
||||||
# Ellenőrizzük, hogy létezik-e a .env fájl
|
# Ellenőrizzük, hogy létezik-e a .env fájl
|
||||||
if [ ! -f "$PROJECT_DIR/.env" ]; then
|
if [ ! -f "$PROJECT_DIR/.env" ]; then
|
||||||
echo "HIBA: A '.env' fájl nem található a '$PROJECT_DIR' mappában."
|
echo "HIBA: A '.env' fájl nem található a '$PROJECT_DIR' mappában."
|
||||||
echo "Kérjük, hozza létre a '.env' fájlt a GOOGLE_API_KEY és GOOGLE_GENAI_USE_VERTEXAI változókkal."
|
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
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..."
|
echo "Docker image építése..."
|
||||||
docker build -t "$IMAGE_NAME" "$PROJECT_DIR"
|
docker build -t "$IMAGE_NAME" "$PROJECT_DIR"
|
||||||
|
|
||||||
echo "Konténer indítása API kulccsal (változók a .env fájlból)..."
|
echo "Konténer indítása háttérben (-d)..."
|
||||||
# --it: Interaktív mód, hogy tudd használni a CLI-t
|
# -d: detached mode (háttérben fut)
|
||||||
# --rm: Automatikusan törli a konténert, ha leáll
|
# -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
|
# --env-file: Környezeti változók betöltése a .env fájlból
|
||||||
docker run --it --rm \
|
docker run -d \
|
||||||
|
-p 5678:5678 \
|
||||||
|
--name "$CONTAINER_NAME" \
|
||||||
--env-file "$PROJECT_DIR/.env" \
|
--env-file "$PROJECT_DIR/.env" \
|
||||||
"$IMAGE_NAME"
|
"$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."
|
||||||
|
|||||||
Reference in New Issue
Block a user