app-store/apps/tooljet/docker-compose.yml
2023-09-04 20:59:03 +02:00

95 lines
3.0 KiB
YAML

version: "3.7"
services:
client-tooljet:
container_name: client-tooljet
tty: true
stdin_open: true
image: tooljet/tooljet-client-ce:v2.4.2
restart: always
ports:
- ${APP_PORT}:80
depends_on:
- server-tooljet
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.tooljet-web-redirect.redirectscheme.scheme: https
traefik.http.services.tooljet.loadbalancer.server.port: 80
# Web
traefik.http.routers.tooljet-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.tooljet-insecure.entrypoints: web
traefik.http.routers.tooljet-insecure.service: tooljet
traefik.http.routers.tooljet-insecure.middlewares: tooljet-web-redirect
# Websecure
traefik.http.routers.tooljet.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.tooljet.entrypoints: websecure
traefik.http.routers.tooljet.service: tooljet
traefik.http.routers.tooljet.tls.certresolver: myresolver
# Local domain
traefik.http.routers.tooljet-local-insecure.rule: Host(`tooljet.${LOCAL_DOMAIN}`)
traefik.http.routers.tooljet-local-insecure.entrypoints: web
traefik.http.routers.tooljet-local-insecure.service: tooljet
traefik.http.routers.tooljet-local-insecure.middlewares: tooljet-web-redirect
# Local domain secure
traefik.http.routers.tooljet-local.rule: Host(`tooljet.${LOCAL_DOMAIN}`)
traefik.http.routers.tooljet-local.entrypoints: websecure
traefik.http.routers.tooljet-local.service: tooljet
traefik.http.routers.tooljet-local.tls: true
command: openresty -g "daemon off;"
server-tooljet:
container_name: server-tooljet
image: tooljet/tooljet-server-ce:v2.14.0
tty: true
stdin_open: true
restart: always
networks:
- tipi_main_network
environment:
- 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=db-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-tooljet:
container_name: db-tooljet
image: postgres:11
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/db:/var/lib/postgresql/data
environment:
- POSTGRES_USER=tooljet
- POSTGRES_PASSWORD=${DB_PASSWORD}
- POSTGRES_DB=tooljet
- PGDATA=/data/postgres
networks:
- tipi_main_network