From 8bc0d9e512adf60df65ab6a902ef37b62add11b5 Mon Sep 17 00:00:00 2001 From: Sirawith Floy Date: Thu, 7 May 2026 12:08:00 +0700 Subject: [PATCH 1/9] Add Dockerfile and config for Render --- Dockerfile | 51 +++++++++++++++++---------------------------------- package.json | 12 ++++++++++++ render.yaml | 41 +++++++---------------------------------- 3 files changed, 36 insertions(+), 68 deletions(-) create mode 100644 package.json diff --git a/Dockerfile b/Dockerfile index 46bf0e0..efa241f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,40 +1,23 @@ -# ETAP 1: Pobieramy apk -FROM alpine:latest AS builder -RUN apk add --no-cache apk-tools-static +FROM node:18 -# ETAP 2: Docelowy obraz n8n -FROM n8nio/n8n:2.8.3 +# Install Python3 and pip (Render compatibility) +RUN apt-get update && apt-get install -y \ + python3 \ + python3-pip \ + && rm -rf /var/lib/apt/lists/* -USER root +# Set working directory +WORKDIR /app -# Krok 1: Przywracamy apk -COPY --from=builder /sbin/apk.static /sbin/apk -RUN /sbin/apk -X http://dl-cdn.alpinelinux.org/alpine/latest-stable/main -U --allow-untrusted --initdb add apk-tools +# Copy package.json and install dependencies +COPY package.json package-lock.json* ./ +RUN npm install -# Krok 2: Instalujemy Pythona, venv oraz GIT-a -RUN apk update && apk add --no-cache python3 py3-pip py3-virtualenv git +# Copy all source files +COPY . . -# Krok 3: Odtworzenie brakującego kodu runnera Pythona (Błąd obrazu n8n) -RUN mkdir -p /usr/local/lib/node_modules/@n8n && \ - git clone --depth 1 https://github.com/n8n-io/n8n.git /tmp/n8n-repo && \ - cp -r /tmp/n8n-repo/packages/@n8n/task-runner-python /usr/local/lib/node_modules/@n8n/ && \ - rm -rf /tmp/n8n-repo +# Expose port 5678 +EXPOSE 5678 -# Krok 4: Budowa .venv i instalacja zoptymalizowanej paczki ETL (~220MB) -RUN cd /usr/local/lib/node_modules/@n8n/task-runner-python && \ - python3 -m venv .venv && \ - .venv/bin/pip install --no-cache-dir requests websockets pandas numpy openpyxl beautifulsoup4 python-dateutil && \ - chmod -R 777 /usr/local/lib/node_modules/@n8n/task-runner-python && \ - chown -R node:node /usr/local/lib/node_modules/@n8n/task-runner-python - -# Krok 5: Utworzenie bezpiecznego folderu tymczasowego (rozwiązanie "insufficient permissions") -RUN mkdir -p /tmp/n8n_runner && \ - chown -R node:node /tmp/n8n_runner && \ - chmod -R 777 /tmp/n8n_runner - -# Krok 6: Nadanie domyślnych uprawnień dla procesu n8n -RUN chown -R node:node /usr/local/lib/node_modules/n8n && \ - mkdir -p /home/node/.n8n && chown -R node:node /home/node/.n8n - -USER node -WORKDIR /home/node +# Start n8n +CMD ["n8n", "start"] \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..e66c507 --- /dev/null +++ b/package.json @@ -0,0 +1,12 @@ +{ + "name": "n8n-render", + "version": "1.0.0", + "description": "n8n v2.8.3 on Render with Python support", + "main": "index.js", + "dependencies": { + "n8n": "2.8.3" + }, + "engines": { + "node": "18" + } +} \ No newline at end of file diff --git a/render.yaml b/render.yaml index c48cbff..faf8f3b 100644 --- a/render.yaml +++ b/render.yaml @@ -1,38 +1,11 @@ services: - type: web - name: n8n-v2-8-3-python + name: n8n-v2.8.3 env: docker - plan: starter - region: frankfurt - disk: - name: n8n_data - mountPath: /home/node/.n8n - sizeGB: 1 + dockerfilePath: ./Dockerfile + plan: standard + port: 5678 + healthCheckPath: / envVars: - - key: N8N_PORT - value: 5678 - - key: N8N_PROTOCOL - value: https - - key: N8N_HOST - value: 0.0.0.0 - - key: N8N_RUNNERS_MODE - value: internal - - key: N8N_RUNNERS_TEMP_DIRECTORY - value: /tmp/n8n_runner - - key: N8N_ENCRYPTION_KEY - generateValue: true - - key: WEBHOOK_URL - sync: false - placeholder: "https://your-service-name.onrender.com" - - key: N8N_NODES_CODE_CAN_REQUIRE_MODULES_BUILTIN - value: fs,path,child_process,os,util - - key: N8N_NODES_CODE_CAN_REQUIRE_MODULES_EXTERNAL - value: "*" - - key: N8N_RUNNERS_EXTERNAL_ALLOW - value: "*" - - key: N8N_RUNNERS_STDLIB_ALLOW - value: "*" - - key: EXECUTIONS_DATA_SAVE_MANUAL_EXECUTIONS - value: "false" - - key: EXECUTIONS_DATA_SAVE_ON_ERROR - value: all + - key: NODE_ENV + value: production \ No newline at end of file From 3cce32c32d4ff5cdaa6167cd77f3d99f0d657342 Mon Sep 17 00:00:00 2001 From: Sirawith Floy Date: Thu, 7 May 2026 12:26:10 +0700 Subject: [PATCH 2/9] Update Dockerfile, render.yaml and package.json with full config for n8n v2.8.3 on Render --- Dockerfile | 4 ++-- package.json | 5 ++--- render.yaml | 10 +++++++++- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index efa241f..b690a1c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,12 +1,12 @@ FROM node:18 -# Install Python3 and pip (Render compatibility) +# Install python3 and pip RUN apt-get update && apt-get install -y \ python3 \ python3-pip \ && rm -rf /var/lib/apt/lists/* -# Set working directory +# Set working directory to /app WORKDIR /app # Copy package.json and install dependencies diff --git a/package.json b/package.json index e66c507..0ba83ed 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,7 @@ { - "name": "n8n-render", + "name": "n8n-app", "version": "1.0.0", - "description": "n8n v2.8.3 on Render with Python support", - "main": "index.js", + "description": "n8n v2.8.3 deployment on Render", "dependencies": { "n8n": "2.8.3" }, diff --git a/render.yaml b/render.yaml index faf8f3b..7c62752 100644 --- a/render.yaml +++ b/render.yaml @@ -8,4 +8,12 @@ services: healthCheckPath: / envVars: - key: NODE_ENV - value: production \ No newline at end of file + value: production + - key: N8N_HOST + value: 0.0.0.0 + - key: N8N_PORT + value: 5678 + - key: N8N_PROTOCOL + value: https + - key: WEBHOOK_URL + value: https://n8n-chatbot-6q3s.onrender.com \ No newline at end of file From 1d718f4408af3d79f4154676b9bf11253f35cec3 Mon Sep 17 00:00:00 2001 From: Sirawith Keawsee Date: Thu, 7 May 2026 12:32:33 +0700 Subject: [PATCH 3/9] Add Dockerfile, package.json, and render.yaml for n8n v2.8.3 --- Dockerfile | 19 ++++++++++--------- package.json | 6 ++++-- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index b690a1c..b9d0d41 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,16 +1,17 @@ FROM node:18 # Install python3 and pip -RUN apt-get update && apt-get install -y \ - python3 \ - python3-pip \ - && rm -rf /var/lib/apt/lists/* +RUN apt-get update && \ + apt-get install -y python3 python3-pip && \ + rm -rf /var/lib/apt/lists/* -# Set working directory to /app +# Set working directory WORKDIR /app -# Copy package.json and install dependencies -COPY package.json package-lock.json* ./ +# Copy only package.json +COPY package.json ./ + +# Run npm install RUN npm install # Copy all source files @@ -19,5 +20,5 @@ COPY . . # Expose port 5678 EXPOSE 5678 -# Start n8n -CMD ["n8n", "start"] \ No newline at end of file +# Start n8n with "n8n start" +CMD ["npx", "n8n", "start"] diff --git a/package.json b/package.json index 0ba83ed..f904e1f 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,13 @@ { "name": "n8n-app", "version": "1.0.0", - "description": "n8n v2.8.3 deployment on Render", "dependencies": { "n8n": "2.8.3" }, "engines": { "node": "18" + }, + "scripts": { + "start": "npx n8n start" } -} \ No newline at end of file +} From af2c0b8561f8d778ef15de10eacf4e276cf039ee Mon Sep 17 00:00:00 2001 From: Sirawith Keawsee Date: Thu, 7 May 2026 12:46:42 +0700 Subject: [PATCH 4/9] Add Dockerfile, render.yaml, and package.json for n8n v2.8.3 --- Dockerfile | 18 +++++------------- package.json | 3 --- render.yaml | 2 +- 3 files changed, 6 insertions(+), 17 deletions(-) diff --git a/Dockerfile b/Dockerfile index b9d0d41..69eee0b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,24 +1,16 @@ FROM node:18 -# Install python3 and pip -RUN apt-get update && \ - apt-get install -y python3 python3-pip && \ - rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y \ + python3 \ + python3-pip \ + && rm -rf /var/lib/apt/lists/* -# Set working directory WORKDIR /app -# Copy only package.json COPY package.json ./ - -# Run npm install RUN npm install -# Copy all source files COPY . . -# Expose port 5678 EXPOSE 5678 - -# Start n8n with "n8n start" -CMD ["npx", "n8n", "start"] +CMD ["n8n", "start"] diff --git a/package.json b/package.json index f904e1f..5e93de0 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,5 @@ }, "engines": { "node": "18" - }, - "scripts": { - "start": "npx n8n start" } } diff --git a/render.yaml b/render.yaml index 7c62752..32f2065 100644 --- a/render.yaml +++ b/render.yaml @@ -16,4 +16,4 @@ services: - key: N8N_PROTOCOL value: https - key: WEBHOOK_URL - value: https://n8n-chatbot-6q3s.onrender.com \ No newline at end of file + value: https://n8n-chatbot-6q3s.onrender.com From de1bd3c44de6e7ddf6845800b14cbb3a70f84506 Mon Sep 17 00:00:00 2001 From: Sirawith Keawsee Date: Thu, 7 May 2026 12:50:44 +0700 Subject: [PATCH 5/9] Minimal Dockerfile for n8n v2.8.3 --- Dockerfile | 8 +++----- package.json | 10 ---------- render.yaml | 2 +- 3 files changed, 4 insertions(+), 16 deletions(-) delete mode 100644 package.json diff --git a/Dockerfile b/Dockerfile index 69eee0b..21619a5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,10 +7,8 @@ RUN apt-get update && apt-get install -y \ WORKDIR /app -COPY package.json ./ -RUN npm install - -COPY . . +# ติดตั้ง n8n โดยตรง +RUN npm install n8n@2.8.3 EXPOSE 5678 -CMD ["n8n", "start"] +CMD ["n8n", "start"] \ No newline at end of file diff --git a/package.json b/package.json deleted file mode 100644 index 5e93de0..0000000 --- a/package.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "name": "n8n-app", - "version": "1.0.0", - "dependencies": { - "n8n": "2.8.3" - }, - "engines": { - "node": "18" - } -} diff --git a/render.yaml b/render.yaml index 32f2065..7c62752 100644 --- a/render.yaml +++ b/render.yaml @@ -16,4 +16,4 @@ services: - key: N8N_PROTOCOL value: https - key: WEBHOOK_URL - value: https://n8n-chatbot-6q3s.onrender.com + value: https://n8n-chatbot-6q3s.onrender.com \ No newline at end of file From 8e1d303aa8977aa415cdf92fd6a046dc64a3215d Mon Sep 17 00:00:00 2001 From: Sirawith Keawsee Date: Thu, 7 May 2026 16:45:28 +0700 Subject: [PATCH 6/9] Remove custom Dockerfile for official image --- Dockerfile | 14 -------------- 1 file changed, 14 deletions(-) delete mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 21619a5..0000000 --- a/Dockerfile +++ /dev/null @@ -1,14 +0,0 @@ -FROM node:18 - -RUN apt-get update && apt-get install -y \ - python3 \ - python3-pip \ - && rm -rf /var/lib/apt/lists/* - -WORKDIR /app - -# ติดตั้ง n8n โดยตรง -RUN npm install n8n@2.8.3 - -EXPOSE 5678 -CMD ["n8n", "start"] \ No newline at end of file From 1f92e9d197083b5b7d393a3b80875b179bf9b958 Mon Sep 17 00:00:00 2001 From: Sirawith Keawsee Date: Thu, 7 May 2026 16:45:29 +0700 Subject: [PATCH 7/9] Use official n8n:2.8.3 image + disk persist --- render.yaml | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/render.yaml b/render.yaml index 7c62752..e29f87e 100644 --- a/render.yaml +++ b/render.yaml @@ -2,10 +2,10 @@ services: - type: web name: n8n-v2.8.3 env: docker - dockerfilePath: ./Dockerfile + image: n8nio/n8n:2.8.3 plan: standard port: 5678 - healthCheckPath: / + healthCheckPath: /healthz envVars: - key: NODE_ENV value: production @@ -16,4 +16,16 @@ services: - key: N8N_PROTOCOL value: https - key: WEBHOOK_URL - value: https://n8n-chatbot-6q3s.onrender.com \ No newline at end of file + value: https://n8n-chatbot-6q3s.onrender.com/ + - key: DB_TYPE + value: sqlite + - key: DB_SQLITE_DATABASE + value: /home/node/.n8n/database.sqlite + - key: N8N_USER_FOLDER + value: /home/node/.n8n + - key: GENERIC_TIMEZONE + value: Asia/Bangkok + disks: + - name: n8n-data + mountPath: /home/node/.n8n + sizeGB: 1 From 04d13d717adbcb5acb50d7cd6860b847af6a97e2 Mon Sep 17 00:00:00 2001 From: Sirawith Keawsee Date: Sat, 9 May 2026 09:48:36 +0700 Subject: [PATCH 8/9] Update README and reorganize files for blueprint deployment - Renamed manual step by step instructions to MANUAL_DEPLOY.md - Updated README.md to reflect the direct use of n8n:2.8.3 image - Added VS Code tasks.json for local Docker testing and yq validation --- .vscode/tasks.json | 42 +++++++++++++++++++ ...p by step instructions => MANUAL_DEPLOY.md | 0 README.md | 41 +++++++----------- 3 files changed, 58 insertions(+), 25 deletions(-) create mode 100644 .vscode/tasks.json rename manual step by step instructions => MANUAL_DEPLOY.md (100%) diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..40dbb5f --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,42 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "🚀 1. n8n: Run local test container", + "detail": "Run n8n locally using docker with official image mapped to port 5678", + "type": "shell", + "command": "docker run -d --name n8n-local-test -p 5678:5678 n8nio/n8n:2.8.3", + "group": "build", + "problemMatcher": [], + "presentation": { + "reveal": "always", + "panel": "shared" + } + }, + { + "label": "🛑 2. n8n: Stop and remove local container", + "detail": "Forces stop and removal of the test container", + "type": "shell", + "command": "docker rm -f n8n-local-test", + "group": "test", + "problemMatcher": [], + "presentation": { + "reveal": "always", + "panel": "shared", + "close": true + } + }, + { + "label": "✅ 3. n8n: Validate render.yaml syntax", + "detail": "Use a temporary docker container to check YAML syntax", + "type": "shell", + "command": "docker run --rm -v \"${workspaceFolder}:/workspace\" -w /workspace mikefarah/yq -e . render.yaml", + "group": "test", + "problemMatcher": [], + "presentation": { + "reveal": "always", + "panel": "shared" + } + } + ] +} \ No newline at end of file diff --git a/manual step by step instructions b/MANUAL_DEPLOY.md similarity index 100% rename from manual step by step instructions rename to MANUAL_DEPLOY.md diff --git a/README.md b/README.md index df707f6..a7a50f5 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,27 @@ -# 🚀 n8n v2.8.3 with Fixed Python Support for Render.com +# 🚀 n8n v2.8.3 Render Blueprint -[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy?repo=https://github.com/api29200/n8n_v2.8.3-render-python) +[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy?repo=https://github.com/bbgunmis-alt/n8n_v2.8.3-render-python) -This repository provides a custom, production-ready Docker image for **n8n v2.8.3** that fixes the "Virtual environment is missing" and "insufficient permissions" errors specifically on Render.com. +This repository provides a **Render Blueprint (`render.yaml`)** to deploy the official **n8n v2.8.3** Docker image (`n8nio/n8n:2.8.3`) to Render.com with a persistent disk. -## 🛠️ The Fix (Internal Task Runner) -The official n8n Docker image for 2.8.3 is missing the Python Task Runner source code, and Render's security policy (`noexec` on `/tmp`) blocks default execution. - -**This repo fixes it by:** -- **Code Injection:** Cloning the missing `@n8n/task-runner-python` source directly into the image. -- **Dependency Fix:** Pre-installing `websockets` (missing in original runner) and common ETL libs (`pandas`, `numpy`, `requests`, `beautifulsoup4`). -- **Permission Bypass:** Redirecting the runner to `/tmp/n8n_runner` with full ownership for the `node` user. - -## 📸 Proof it Works -![Python Node Working](https://raw.githubusercontent.com/api29200/n8n_v2.8.3-render-python/main/screenshot1.png) -*Success! Python Code Node executing with external libraries on Render.* +We no longer build a custom Docker image. This blueprint directly deploys the official image, ensuring maximum compatibility and faster deployments. ## 🚀 One-Click Installation 1. Click the **Deploy to Render** button above. 2. Select **Starter** plan (required for Disk persistence). -3. Set your `WEBHOOK_URL` (the URL Render gives you). -4. **Done!** Python nodes will work out of the box. +3. Wait for the deploy to finish and copy your `WEBHOOK_URL` (the URL Render gives you). +4. Update the `WEBHOOK_URL` environment variable in the Render Dashboard. +5. **Done!** -## 📦 Pre-installed Python Packages -- `pandas` & `numpy` (Data Processing) -- `requests` (API interaction) -- `beautifulsoup4` (Scraping) -- `openpyxl` (Excel support) -- `websockets` (Core requirement) +## 📂 Repository Contents +- `render.yaml`: The Render Blueprint configuration that defines the web service, Docker image, environment variables, and persistent disk. +- `MANUAL_DEPLOY.md`: Step-by-step instructions for manual deployment if the "Deploy to Render" button is not used. -## 🔧 Why use this instead of official image? -The official image throws an `Attempt to read execution was blocked due to insufficient permissions` error on Render. This happens because the runner fails to start due to missing files in `/usr/local/lib/node_modules/@n8n/`. We've reverse-engineered the path traversal and restored the environment. +## 📝 Configuration +The `render.yaml` automatically sets up essential environment variables such as: +- `N8N_PORT=5678` +- `DB_TYPE=sqlite` +- Disk persistence at `/home/node/.n8n` to save your workflows and credentials. --- -Created by [api29200](https://github.com/api29200) | Found a bug? Open an issue! +Created by [api29200](https://github.com/api29200) | Maintained for Render deployment. From d691991b75fb044e91912c6f2a7ead6e725457a2 Mon Sep 17 00:00:00 2001 From: Sirawith Keawsee Date: Sun, 10 May 2026 17:07:23 +0700 Subject: [PATCH 9/9] Harden Render blueprint: runtime image, execution pruning, JSON logs, 5GB disk --- README.md | 50 +++++++++++++++++++++++-------------- render.yaml | 72 ++++++++++++++++++++++++++++++++++++++++++++--------- 2 files changed, 91 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index a7a50f5..e5ae13c 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,39 @@ -# 🚀 n8n v2.8.3 Render Blueprint +# n8n v2.8.3 Render Blueprint -[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy?repo=https://github.com/bbgunmis-alt/n8n_v2.8.3-render-python) +[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy) -This repository provides a **Render Blueprint (`render.yaml`)** to deploy the official **n8n v2.8.3** Docker image (`n8nio/n8n:2.8.3`) to Render.com with a persistent disk. +This repository provides a Render Blueprint (`render.yaml`) to deploy the official n8n v2.8.3 Docker image (`docker.io/n8nio/n8n:2.8.3`) to Render with a persistent disk. -We no longer build a custom Docker image. This blueprint directly deploys the official image, ensuring maximum compatibility and faster deployments. +The service is blueprint-only. It does not build or publish a custom Docker image. -## 🚀 One-Click Installation -1. Click the **Deploy to Render** button above. -2. Select **Starter** plan (required for Disk persistence). -3. Wait for the deploy to finish and copy your `WEBHOOK_URL` (the URL Render gives you). -4. Update the `WEBHOOK_URL` environment variable in the Render Dashboard. -5. **Done!** +## One-Click Installation -## 📂 Repository Contents -- `render.yaml`: The Render Blueprint configuration that defines the web service, Docker image, environment variables, and persistent disk. -- `MANUAL_DEPLOY.md`: Step-by-step instructions for manual deployment if the "Deploy to Render" button is not used. +1. Deploy this repository as a Render Blueprint. +2. Use a paid instance plan that supports persistent disks. +3. Set `WEBHOOK_URL` and `N8N_EDITOR_BASE_URL` to the public Render service URL. +4. Set `N8N_ENCRYPTION_KEY` once and keep it stable across redeploys. +5. Deploy the service and confirm `/healthz` is healthy. -## 📝 Configuration -The `render.yaml` automatically sets up essential environment variables such as: +## Repository Contents + +- `render.yaml`: Render Blueprint configuration for the official n8n image, environment variables, health check, and persistent disk. +- `MANUAL_DEPLOY.md`: Optional manual deployment notes if this file exists in your branch. + +## Configuration + +The Blueprint configures: + +- `runtime: image` with `docker.io/n8nio/n8n:2.8.3` - `N8N_PORT=5678` -- `DB_TYPE=sqlite` -- Disk persistence at `/home/node/.n8n` to save your workflows and credentials. +- SQLite persistence at `/home/node/.n8n/database.sqlite` +- Disk persistence at `/home/node/.n8n` +- Bangkok timezone defaults + +## Production hardening ---- -Created by [api29200](https://github.com/api29200) | Maintained for Render deployment. +- Uses Render's prebuilt-image Blueprint syntax with `runtime: image` and the official `docker.io/n8nio/n8n:2.8.3` image. +- Prompts for `WEBHOOK_URL` and `N8N_EDITOR_BASE_URL` during Blueprint setup so deploy URLs are not hard-coded in git. +- Keeps `N8N_ENCRYPTION_KEY` outside git so encrypted credentials survive redeploys when the same value is reused. +- Keeps execution data smaller by saving errors, pruning old executions, and avoiding successful/manual execution data by default. +- Emits JSON logs to stdout for cleaner Render log search and external log shipping. +- Attaches a persistent disk at `/home/node/.n8n`; increase it before it fills because Render disks can be expanded but not reduced. diff --git a/render.yaml b/render.yaml index e29f87e..49642e5 100644 --- a/render.yaml +++ b/render.yaml @@ -1,31 +1,79 @@ services: - type: web - name: n8n-v2.8.3 - env: docker - image: n8nio/n8n:2.8.3 - plan: standard - port: 5678 + name: patsticker-n8n + runtime: image + plan: starter + image: + url: docker.io/n8nio/n8n:2.8.3 healthCheckPath: /healthz + autoDeploy: true + maxShutdownDelaySeconds: 120 envVars: - key: NODE_ENV value: production - - key: N8N_HOST - value: 0.0.0.0 + - key: PORT + value: 5678 - key: N8N_PORT value: 5678 + - key: N8N_LISTEN_ADDRESS + value: 0.0.0.0 - key: N8N_PROTOCOL value: https + - key: N8N_PROXY_HOPS + value: 1 - key: WEBHOOK_URL - value: https://n8n-chatbot-6q3s.onrender.com/ + sync: false + - key: N8N_EDITOR_BASE_URL + sync: false + - key: N8N_ENCRYPTION_KEY + sync: false - key: DB_TYPE value: sqlite - key: DB_SQLITE_DATABASE value: /home/node/.n8n/database.sqlite + - key: DB_SQLITE_VACUUM_ON_STARTUP + value: "true" - key: N8N_USER_FOLDER value: /home/node/.n8n - key: GENERIC_TIMEZONE value: Asia/Bangkok - disks: - - name: n8n-data - mountPath: /home/node/.n8n - sizeGB: 1 + - key: TZ + value: Asia/Bangkok + - key: EXECUTIONS_TIMEOUT + value: 900 + - key: EXECUTIONS_TIMEOUT_MAX + value: 3600 + - key: EXECUTIONS_DATA_SAVE_ON_ERROR + value: all + - key: EXECUTIONS_DATA_SAVE_ON_SUCCESS + value: none + - key: EXECUTIONS_DATA_SAVE_ON_PROGRESS + value: "false" + - key: EXECUTIONS_DATA_SAVE_MANUAL_EXECUTIONS + value: "false" + - key: EXECUTIONS_DATA_PRUNE + value: "true" + - key: EXECUTIONS_DATA_MAX_AGE + value: 168 + - key: EXECUTIONS_DATA_PRUNE_MAX_COUNT + value: 5000 + - key: N8N_LOG_LEVEL + value: info + - key: N8N_LOG_OUTPUT + value: console + - key: N8N_LOG_FORMAT + value: json + - key: N8N_GRACEFUL_SHUTDOWN_TIMEOUT + value: 110 + - key: N8N_DIAGNOSTICS_ENABLED + value: "false" + - key: N8N_VERSION_NOTIFICATIONS_ENABLED + value: "false" + - key: LINE_CHANNEL_SECRET + sync: false + - key: ALLOW_LINE_SIGNATURE_BYPASS + value: "false" + disk: + name: n8n-data + mountPath: /home/node/.n8n + sizeGB: 5