Merge branch 'n8n-pg-upgrade' of https://github.com/nrvo/runtipi-appstore into nrvo-n8n-pg-upgrade

This commit is contained in:
Nicolas Meienberger 2024-02-13 08:56:59 +01:00
commit 2a2d71661b
4 changed files with 66 additions and 5 deletions

View File

@ -5,14 +5,27 @@
"exposable": true,
"port": 8094,
"id": "n8n",
"tipi_version": 26,
"version": "0.237.0",
"tipi_version": 27,
"version": "1.27.2",
"categories": ["automation"],
"description": "n8n is an extendable workflow automation tool. With a fair-code distribution model, n8n will always have visible source code, be available to self-host, and allow you to add your own custom functions, logic and apps. n8n's node-based approach makes it highly versatile, enabling you to connect anything to everything.",
"short_desc": "Workflow Automation Tool. Alternative to Zapier",
"author": "n8n.io",
"source": "https://github.com/n8n-io/n8n",
"website": "https://n8n.io/",
"form_fields": [],
"form_fields": [
{
"type": "random",
"label": "Database Password",
"min": 32,
"env_variable": "N8N_DB_PASSWORD"
},
{
"type": "random",
"label": "Database Non Root Password",
"min": 32,
"env_variable": "N8N_NR_DB_PASSWORD"
}
],
"supported_architectures": ["arm64", "amd64"]
}

View File

@ -0,0 +1,11 @@
#!/bin/bash
set -e;
if [ -n "${POSTGRES_NON_ROOT_USER:-}" ] && [ -n "${POSTGRES_NON_ROOT_PASSWORD:-}" ]; then
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
CREATE USER ${POSTGRES_NON_ROOT_USER} WITH PASSWORD '${POSTGRES_NON_ROOT_PASSWORD}';
GRANT ALL PRIVILEGES ON DATABASE ${POSTGRES_DB} TO ${POSTGRES_NON_ROOT_USER};
EOSQL
else
echo "SETUP INFO: No Environment variables given!"
fi

View File

@ -3,18 +3,28 @@ version: "3.7"
services:
n8n:
container_name: n8n
image: n8nio/n8n:0.237.0
image: n8nio/n8n:1.27.2
restart: unless-stopped
ports:
- ${APP_PORT}:5678
volumes:
- ${APP_DATA_DIR}/data/n8n:/home/node/.n8n
command: /bin/sh -c "sleep 5; n8n start"
environment:
- N8N_EDITOR_BASE_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN}
- WEBHOOK_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN}
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=n8n_db
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=${N8N_NR_DB_PASSWORD}
networks:
- tipi_main_network
links:
- n8n_db
depends_on:
n8n_db:
condition: service_healthy
labels:
# Main
traefik.enable: true
@ -40,3 +50,24 @@ services:
traefik.http.routers.n8n-local.entrypoints: websecure
traefik.http.routers.n8n-local.service: n8n
traefik.http.routers.n8n-local.tls: true
n8n_db:
container_name: n8n_db
image: postgres:11
restart: unless-stopped
networks:
- tipi_main_network
environment:
- POSTGRES_USER=tipi
- POSTGRES_PASSWORD=${N8N_DB_PASSWORD}
- POSTGRES_DB=n8n
- POSTGRES_NON_ROOT_USER=n8n
- POSTGRES_NON_ROOT_PASSWORD=${N8N_NR_DB_PASSWORD}
volumes:
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
- ${APP_DATA_DIR}/data/init-data.sh:/docker-entrypoint-initdb.d/init-data.sh
healthcheck:
test: ['CMD-SHELL', 'pg_isready -h localhost -U $$POSTGRES_USER -d $$POSTGRES_DB']
interval: 5s
timeout: 5s
retries: 10

View File

@ -8,3 +8,9 @@ n8n is an extendable workflow automation tool. With a fair-code distribution mod
versatile, enabling you to connect anything to everything.
![Screenshot](https://raw.githubusercontent.com/n8n-io/n8n/master/assets/n8n-screenshot.png)
## Build with LangChain and AI in n8n
With n8n's LangChain nodes you can build AI-powered functionality within your workflows. The LangChain nodes are configurable, meaning you can choose your preferred agent, LLM, memory, and so on. Alongside the LangChain nodes, you can connect any n8n node as normal: this means you can integrate your LangChain logic with other data sources and services.
## Available integrations
n8n has 200+ different nodes to automate workflows. The list can be found on: https://n8n.io/integrations