add tooljet

This commit is contained in:
Jazys 2023-08-27 22:23:26 +02:00 committed by Nicolas Meienberger
parent 332b1648b7
commit 06200a5f1b
5 changed files with 101 additions and 64 deletions

42
apps/tooljet/app.env Normal file
View File

@ -0,0 +1,42 @@
TOOLJET_HOST=
LOCKBOX_MASTER_KEY=70726290922441785304399601987729268981756953900892
SECRET_KEY_BASE=mqrBZqJvzUJ2GsHQaktZjKdb2cvdM8
# DATABASE CONFIG
ORM_LOGGING=
PG_DB=tooljet
PG_USER=tooljet
PG_HOST=postgres_tooljet
PG_PASS=tooljet
# Checks every 24 hours to see if a new version of ToolJet is available
CHECK_FOR_UPDATES=check_if_updates_are_available
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
# EMAIL CONFIGURATION
DEFAULT_FROM_EMAIL=hello@tooljet.io
SMTP_USERNAME=
SMTP_PASSWORD=
SMTP_DOMAIN=
SMTP_PORT=
# DISABLE USER SIGNUPS (true or false). Default: true
DISABLE_SIGNUPS=
# OBSERVABILITY
APM_VENDOR=
SENTRY_DNS=
SENTRY_DEBUG=
# FEATURE TOGGLE
COMMENT_FEATURE_ENABLE=
#SSO
SSO_DISABLE_SIGNUP=
SSO_RESTRICTED_DOMAIN=
SSO_GOOGLE_OAUTH2_CLIENT_ID=
SSO_GIT_OAUTH2_CLIENT_ID=
SSO_GIT_OAUTH2_CLIENT_SECRET=

View File

@ -6,15 +6,15 @@
"port": 9876,
"id": "tooljet",
"tipi_version": 23,
"version": "0.237.0",
"version": "2.14.0",
"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/",
"description": "ToolJet is an open-source low-code framework to build and deploy internal tools quickly with minimal engineering effort. ToolJet's drag and drop frontend builder allows you to build complicated responsive frontends within minutes. You can also connect to your data sources, such as databases ( PostgreSQL, MongoDB, Elasticsearch & more), API endpoints (ToolJet supports importing OpenAPI spec & OAuth2 authorization), SaaS tools (Stripe, Slack, Google Sheets, Airtable, Notion & more) and object storage services ( S3, GCS, Minio, etc ) to fetch and write data.",
"short_desc": "Alternative to retool to construct CRM dashboard",
"author": "tooljet.com",
"source": "https://github.com/ToolJet/ToolJet",
"website": "https://www.tooljet.com",
"form_fields": [
{
"type": "random",

View File

@ -1,58 +1,14 @@
version: "3.7"
services:
n8n:
container_name: n8n
image: n8nio/n8n:0.237.0
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:
- DB-TYPE=postgresdb
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_HOST=db-n8n
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_USER=tipi
- DB_POSTGRESDB_PASSWORD=tipi
- N8N_EDITOR_BASE_URL=${APP_DOMAIN}
depends_on:
- db-n8n
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.n8n-web-redirect.redirectscheme.scheme: https
traefik.http.services.n8n.loadbalancer.server.port: 5678
# Web
traefik.http.routers.n8n-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.n8n-insecure.entrypoints: web
traefik.http.routers.n8n-insecure.service: n8n
traefik.http.routers.n8n-insecure.middlewares: n8n-web-redirect
# Websecure
traefik.http.routers.n8n.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.n8n.entrypoints: websecure
traefik.http.routers.n8n.service: n8n
traefik.http.routers.n8n.tls.certresolver: myresolver
# Local domain
traefik.http.routers.n8n-local-insecure.rule: Host(`n8n.${LOCAL_DOMAIN}`)
traefik.http.routers.n8n-local-insecure.entrypoints: web
traefik.http.routers.n8n-local-insecure.service: n8n
traefik.http.routers.n8n-local-insecure.middlewares: n8n-web-redirect
# Local domain secure
traefik.http.routers.n8n-local.rule: Host(`n8n.${LOCAL_DOMAIN}`)
traefik.http.routers.n8n-local.entrypoints: websecure
traefik.http.routers.n8n-local.service: n8n
traefik.http.routers.n8n-local.tls: true
client:
tty: true
stdin_open: true
image: tooljet/tooljet-client-ce:latest
image: tooljet/tooljet-client-ce:v2.4.2
restart: always
ports:
- ${APP_PORT}:80
depends_on:
- server
networks:
@ -85,15 +41,39 @@ services:
command: openresty -g "daemon off;"
server:
image: tooljet/tooljet-server-ce:latest
image: tooljet/tooljet-server-ce:v2.14.0
tty: true
stdin_open: true
restart: always
networks:
- tipi_main_network
# env_file: .env
environment:
SERVE_CLIENT: "false"
- SERVE_CLIENT=false
- TOOLJET_HOST=https://${APP_DOMAIN}
- LOCKBOX_MASTER_KEY=70726290922441785304399601987729268981756953900892
- SECRET_KEY_BASE=mqrBZqJvzUJ2GsHQaktZjKdb2cvdM8
- ORM_LOGGING
- PG_DB=tooljet
- PG_USER=tooljet
- PG_HOST=postgres_tooljet
- PG_PASS=${DB_PASSWORD}
- CHECK_FOR_UPDATES=check_if_updates_are_available
- GOOGLE_CLIENT_ID
- GOOGLE_CLIENT_SECRET
- DEFAULT_FROM_EMAIL=hello@tooljet.io
- SMTP_USERNAME
- SMTP_PASSWORD
- SMTP_DOMAIN
- SMTP_PORT
- DISABLE_SIGNUPS
- APM_VENDOR
- SENTRY_DNS
- SENTRY_DEBUG
- SSO_DISABLE_SIGNUP
- SSO_RESTRICTED_DOMAIN
- SSO_GOOGLE_OAUTH2_CLIENT_ID
- SSO_GIT_OAUTH2_CLIENT_ID
- SSO_GIT_OAUTH2_CLIENT_SECRET
command: npm run start:prod
db-n8n:
@ -103,10 +83,9 @@ services:
volumes:
- ${APP_DATA_DIR}/data/db:/var/lib/postgresql/data
environment:
- POSTGRES_USER=tipi
- POSTGRES_PASSWORD=${PG_PASS}
- POSTGRES_USER=tooljet
- POSTGRES_PASSWORD=${DB_PASSWORD}
- POSTGRES_DB=tooljet
# - POSTGRES_HOST=${PG_HOST}
- PGDATA=/data/postgres
networks:
- tipi_main_network

View File

@ -1,10 +1,26 @@
## Installation Notes ##
To enable OAUTH integrations you will need to enable the "expose app" option and configure a URL in Tipi. This setting can be changed at a later date if an integration is identified that needs it.
You will need to enable the "expose app" option and configure a URL in Tipi to use Tooljet. This setting can be changed at a later date if an integration is identified that needs it.
## Easily automate tasks across different services.
## Easily build internal tools.
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.
Visual app builder: 40+ built-in responsive widgets such as Tables, Charts, Lists, Forms, Progressbars, and more.
ToolJet Database: In-built no-code database.
Multi-Page: Build an application with as many pages as you want.
Multiplayer editing: multiple users can use the app builder at the same time.
40+ data sources: connect to external databases, cloud storages and APIs.
Desktop & mobile: layout widths can be customised to support different screens.
Self-host: (supports Docker, Kubernetes, Heroku, AWS EC2, Google Cloud Run, and more).
Collaborate: add comments anywhere on the canvas and tag your team members.
Extend with plugins: use our commandline tool to easily bootstrap new connectors.
Version control: every application have different versions with proper release cycle.
Run JS & Python code: ability custom JavaScript & Python snippets
Granular access control on group-level and app-level.
Low-code: write JS code almost anywhere in the builder. For example, the color property of text can be set to status === 'success' ? 'green' : 'red'
No-code query editors: for all supported data sources.
Join and transform data: transform query results using just JavaScript/Python code.
Secure: All the credentials are securely encrypted using aes-256-gcm.
Doesn't store data: ToolJet acts only as a proxy and doesn't store any data.
SSO: Supports multiple SSO providers
![Screenshot](https://raw.githubusercontent.com/n8n-io/n8n/master/assets/n8n-screenshot.png)
![Screenshot](https://user-images.githubusercontent.com/7828962/211444352-4d6d2e4a-13c9-4980-9e16-4aed4af9811b.png)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 68 KiB