one-click-apps/public/v4/apps/n8n-io.yml

118 lines
5.0 KiB
YAML

captainVersion: 4
services:
$$cap_appname-db:
caproverExtra:
notExposeAsWebApp: 'true'
image: postgres:$$cap_POSTGRES_VERSION
environment:
POSTGRES_DB: $$cap_POSTGRES_DB
POSTGRES_USER: $$cap_POSTGRES_USER
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
volumes:
- $$cap_appname-db:/var/lib/postgresql/data
$$cap_appname:
caproverExtra:
containerHttpPort: 5678
image: n8nio/n8n:$$cap_N8N_VERSION
environment:
DB_TYPE: postgresdb
DB_POSTGRESDB_HOST: srv-captain--$$cap_appname-db
DB_POSTGRESDB_DATABASE: $$cap_POSTGRES_DB
DB_POSTGRESDB_USER: $$cap_POSTGRES_USER
DB_POSTGRESDB_PASSWORD: $$cap_POSTGRES_PASSWORD
GENERIC_TIMEZONE: $$cap_N8N_TIMEZONE
TZ: $$cap_N8N_TIMEZONE
NODE_ENV: $$cap_N8N_ENVIRONMENT
N8N_PROTOCOL: https
N8N_HOST: $$cap_appname.$$cap_root_domain
N8N_DIAGNOSTICS_ENABLED: $$cap_N8N_DIAGNOSTICS_ENABLED
N8N_EMAIL_MODE: smtp
N8N_SMTP_HOST: $$cap_N8N_SMTP_HOST
N8N_SMTP_PORT: $$cap_N8N_SMTP_PORT
N8N_SMTP_USER: $$cap_N8N_SMTP_USER
N8N_SMTP_PASS: $$cap_N8N_SMTP_PASS
N8N_SMTP_SENDER: $$cap_N8N_SMTP_SENDER
N8N_SMTP_SSL: $$cap_N8N_SMTP_SSL
WEBHOOK_URL: https://$$cap_appname.$$cap_root_domain
N8N_EDITOR_BASE_URL: https://$$cap_appname.$$cap_root_domain
volumes:
- $$cap_appname:/root/.n8n
- $$cap_appname-files:/files
depends_on:
- $$cap_appname-db
caproverOneClickApp:
displayName: n8n.io
description: Node based workflow automation tool
isOfficial: true
instructions:
start: |-
n8n is a free and open node based workflow automation tool.
If you want to invite members and enable password resets, you will need to enter SMTP details.
end: |-
n8n has been successfully deployed! It might take few moments before it's fully started.
You can access it at `http://$$cap_appname.$$cap_root_domain` and set up your account.
**Important:** Please enable **HTTPS** and **WebSocket Support**.
variables:
- id: $$cap_N8N_VERSION
label: Application | n8n.io
description: Check out their Docker page for the valid tags https://hub.docker.com/r/n8nio/n8n/tags
defaultValue: '0.198.2'
validRegex: /.{1,}/
- id: $$cap_N8N_TIMEZONE
label: Application | Timezone
description: >-
Timezone used by the server.
Please check out this page for valid time zones: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
defaultValue: UTC
validRegex: /.{1,}/
- id: $$cap_N8N_ENVIRONMENT
label: Application | Environment
description: Application environment.
defaultValue: 'production'
validRegex: /^(production|development)$/
- id: $$cap_N8N_DIAGNOSTICS_ENABLED
label: Application | Enable Telemetry
description: Whether to send telemetry data to n8n.io.
defaultValue: 'false'
validRegex: /^(true|false)$/
- id: $$cap_N8N_SMTP_HOST
label: Application | SMTP Host
description: SMTP host used for sending mails.
- id: $$cap_N8N_SMTP_PORT
label: Application | SMTP Port
description: SMTP port used for sending mails. Usually `465`.
- id: $$cap_N8N_SMTP_USER
label: Application | SMTP User
description: SMTP user used for sending mails.
- id: $$cap_N8N_SMTP_PASS
label: Application | SMTP Password
description: SMTP user password used for sending mails.
- id: $$cap_N8N_SMTP_SENDER
label: Application | SMTP Sender
description: SMTP sender used for sending mails (e.g. `N8N <n8n@example.com>`).
- id: $$cap_N8N_SMTP_SSL
label: Application | SMTP SSL
description: Whether to use SSL for sending mails through SMTP.
defaultValue: 'true'
validRegex: /^(true|false)$/
- id: $$cap_POSTGRES_VERSION
label: Database | Version
description: Check out their Docker page for the valid tags https://hub.docker.com/_/postgres/tags
defaultValue: '15.0-alpine'
validRegex: /.{1,}/
- id: $$cap_POSTGRES_DB
label: Database | Name
defaultValue: n8n
description: Name of the PostgreSQL database.
validRegex: /.{1,}/
- id: $$cap_POSTGRES_USER
label: Database | User
defaultValue: n8n
description: Username for the PostgreSQL database.
validRegex: /.{1,}/
- id: $$cap_POSTGRES_PASSWORD
label: Database | Password
description: Password of the PostgreSQL database user.
defaultValue: $$cap_gen_random_hex(16)
validRegex: /.{1,}/