2024-04-29 11:29:42 +00:00
|
|
|
# documentation: https://docs.twenty.com
|
|
|
|
# slogan: Twenty is a CRM designed to fit your unique business needs.
|
|
|
|
# tags: crm, self-hosted, dashboard
|
|
|
|
# logo: svgs/twenty.svg
|
2024-05-15 07:46:31 +00:00
|
|
|
# port: 3000
|
2024-04-29 11:29:42 +00:00
|
|
|
|
|
|
|
services:
|
|
|
|
twenty:
|
|
|
|
image: 'twentycrm/twenty:latest'
|
|
|
|
environment:
|
2024-05-15 07:46:31 +00:00
|
|
|
- SERVICE_FQDN_TRIGGER_3000
|
|
|
|
- SERVER_URL=$SERVICE_FQDN_TWENTY
|
|
|
|
- FRONT_BASE_URL=$SERVICE_FQDN_TWENTY
|
|
|
|
- ENABLE_DB_MIGRATIONS=true
|
|
|
|
- SIGN_IN_PREFILLED=false
|
2024-05-03 10:55:05 +00:00
|
|
|
|
2024-05-15 07:46:31 +00:00
|
|
|
- STORAGE_TYPE=${STORAGE_TYPE:-local}
|
|
|
|
- STORAGE_S3_REGION=$STORAGE_S3_REGION
|
|
|
|
- STORAGE_S3_NAME=$STORAGE_S3_NAME
|
|
|
|
- STORAGE_S3_ENDPOINT=$STORAGE_S3_ENDPOINT
|
2024-05-03 10:55:05 +00:00
|
|
|
|
2024-05-15 07:46:31 +00:00
|
|
|
- ACCESS_TOKEN_SECRET=$SERVICE_BASE64_32_ACCESS
|
|
|
|
- LOGIN_TOKEN_SECRET=$SERVICE_BASE64_32_LOGIN
|
|
|
|
- REFRESH_TOKEN_SECRET=$SERVICE_BASE64_32_REFRESH
|
|
|
|
- FILE_TOKEN_SECRET=$SERVICE_BASE64_32_FILE
|
|
|
|
- POSTGRES_ADMIN_PASSWORD=$SERVICE_PASSWORD_POSTGRES
|
|
|
|
- PG_DATABASE_URL=postgres://postgres:$SERVICE_PASSWORD_POSTGRES@postgres:5432/default
|
|
|
|
|
|
|
|
- EMAIL_FROM_ADDRESS=$EMAIL_FROM_ADDRESS
|
|
|
|
- EMAIL_FROM_NAME=$EMAIL_FROM_NAME
|
|
|
|
- EMAIL_SYSTEM_ADDRESS=$EMAIL_SYSTEM_ADDRESS
|
|
|
|
- EMAIL_DRIVER=${EMAIL_DRIVER:-logger}
|
|
|
|
- EMAIL_SMTP_HOST=$EMAIL_SMTP_HOST
|
|
|
|
- EMAIL_SMTP_PORT=$EMAIL_SMTP_PORT
|
|
|
|
- EMAIL_SMTP_USER=$EMAIL_SMTP_USER
|
|
|
|
- EMAIL_SMTP_PASSWORD=$EMAIL_SMTP_PASSWORD
|
|
|
|
|
|
|
|
- TELEMETRY_ENABLED=${TELEMETRY_ENABLED:-false}
|
|
|
|
- CACHE_STORAGE_TYPE=${CACHE_STORAGE_TYPE:-redis}
|
|
|
|
- REDIS_HOST=redis
|
|
|
|
- REDIS_PORT=6379
|
2024-04-29 11:29:42 +00:00
|
|
|
depends_on:
|
|
|
|
postgres:
|
|
|
|
condition: service_healthy
|
|
|
|
healthcheck:
|
2024-05-17 08:11:55 +00:00
|
|
|
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000/healthz"]
|
2024-04-29 11:29:42 +00:00
|
|
|
interval: 2s
|
|
|
|
timeout: 10s
|
|
|
|
retries: 15
|
|
|
|
postgres:
|
|
|
|
image: "twentycrm/twenty-postgres:latest"
|
|
|
|
environment:
|
2024-05-15 07:46:31 +00:00
|
|
|
- POSTGRES_USER=postgres
|
|
|
|
- POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRES
|
|
|
|
- POSTGRES_DB=default
|
2024-04-29 11:29:42 +00:00
|
|
|
volumes:
|
|
|
|
- pg-data:/bitnami/postgresql
|
|
|
|
healthcheck:
|
2024-05-03 10:56:49 +00:00
|
|
|
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
|
2024-04-29 11:29:42 +00:00
|
|
|
interval: 5s
|
|
|
|
timeout: 20s
|
|
|
|
retries: 10
|
2024-05-15 07:46:31 +00:00
|
|
|
redis:
|
|
|
|
image: "redis:latest"
|
|
|
|
volumes:
|
|
|
|
- "redis-data:/data"
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "redis-cli", "ping"]
|
|
|
|
interval: 5s
|
|
|
|
timeout: 20s
|
|
|
|
retries: 10
|