chore: Update twenty CRM template with environment variables and dependencies
This commit is contained in:
@@ -2,29 +2,43 @@
|
|||||||
# slogan: Twenty is a CRM designed to fit your unique business needs.
|
# slogan: Twenty is a CRM designed to fit your unique business needs.
|
||||||
# tags: crm, self-hosted, dashboard
|
# tags: crm, self-hosted, dashboard
|
||||||
# logo: svgs/twenty.svg
|
# logo: svgs/twenty.svg
|
||||||
|
# port: 3000
|
||||||
|
|
||||||
services:
|
services:
|
||||||
twenty:
|
twenty:
|
||||||
image: 'twentycrm/twenty:latest'
|
image: 'twentycrm/twenty:latest'
|
||||||
environment:
|
environment:
|
||||||
SERVER_URL: $SERVICE_FQDN_TWENTY_3000
|
- SERVICE_FQDN_TRIGGER_3000
|
||||||
FRONT_BASE_URL: $SERVICE_FQDN_TWENTY_3000
|
- SERVER_URL=$SERVICE_FQDN_TWENTY
|
||||||
ENABLE_DB_MIGRATIONS: true
|
- FRONT_BASE_URL=$SERVICE_FQDN_TWENTY
|
||||||
SIGN_IN_PREFILLED: false
|
- ENABLE_DB_MIGRATIONS=true
|
||||||
|
- SIGN_IN_PREFILLED=false
|
||||||
|
|
||||||
STORAGE_TYPE: ${STORAGE_TYPE:-local}
|
- STORAGE_TYPE=${STORAGE_TYPE:-local}
|
||||||
STORAGE_S3_REGION: $STORAGE_S3_REGION
|
- STORAGE_S3_REGION=$STORAGE_S3_REGION
|
||||||
STORAGE_S3_NAME: $STORAGE_S3_NAME
|
- STORAGE_S3_NAME=$STORAGE_S3_NAME
|
||||||
STORAGE_S3_ENDPOINT: $STORAGE_S3_ENDPOINT
|
- STORAGE_S3_ENDPOINT=$STORAGE_S3_ENDPOINT
|
||||||
|
|
||||||
ACCESS_TOKEN_SECRET: $SERVICE_BASE64_32_ACCESS
|
- ACCESS_TOKEN_SECRET=$SERVICE_BASE64_32_ACCESS
|
||||||
LOGIN_TOKEN_SECRET: $SERVICE_BASE64_32_LOGIN
|
- LOGIN_TOKEN_SECRET=$SERVICE_BASE64_32_LOGIN
|
||||||
REFRESH_TOKEN_SECRET: $SERVICE_BASE64_32_REFRESH
|
- REFRESH_TOKEN_SECRET=$SERVICE_BASE64_32_REFRESH
|
||||||
FILE_TOKEN_SECRET: $SERVICE_BASE64_32_FILE
|
- FILE_TOKEN_SECRET=$SERVICE_BASE64_32_FILE
|
||||||
POSTGRES_ADMIN_PASSWORD: $SERVICE_PASSWORD_POSTGRES
|
- POSTGRES_ADMIN_PASSWORD=$SERVICE_PASSWORD_POSTGRES
|
||||||
PG_DATABASE_URL: postgres://postgres:$SERVICE_PASSWORD_POSTGRES@postgres:5432/default
|
- PG_DATABASE_URL=postgres://postgres:$SERVICE_PASSWORD_POSTGRES@postgres:5432/default
|
||||||
ports:
|
|
||||||
- "3000:3000"
|
- 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
|
||||||
depends_on:
|
depends_on:
|
||||||
postgres:
|
postgres:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
@@ -36,9 +50,9 @@ services:
|
|||||||
postgres:
|
postgres:
|
||||||
image: "twentycrm/twenty-postgres:latest"
|
image: "twentycrm/twenty-postgres:latest"
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_USER: postgres
|
- POSTGRES_USER=postgres
|
||||||
POSTGRES_PASSWORD: $SERVICE_PASSWORD_POSTGRES
|
- POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRES
|
||||||
POSTGRES_DB: default
|
- POSTGRES_DB=default
|
||||||
volumes:
|
volumes:
|
||||||
- pg-data:/bitnami/postgresql
|
- pg-data:/bitnami/postgresql
|
||||||
healthcheck:
|
healthcheck:
|
||||||
@@ -46,3 +60,12 @@ services:
|
|||||||
interval: 5s
|
interval: 5s
|
||||||
timeout: 20s
|
timeout: 20s
|
||||||
retries: 10
|
retries: 10
|
||||||
|
redis:
|
||||||
|
image: "redis:latest"
|
||||||
|
volumes:
|
||||||
|
- "redis-data:/data"
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "redis-cli", "ping"]
|
||||||
|
interval: 5s
|
||||||
|
timeout: 20s
|
||||||
|
retries: 10
|
||||||
|
|||||||
@@ -948,6 +948,19 @@
|
|||||||
"minversion": "0.0.0",
|
"minversion": "0.0.0",
|
||||||
"port": "3000"
|
"port": "3000"
|
||||||
},
|
},
|
||||||
|
"twenty": {
|
||||||
|
"documentation": "https:\/\/docs.twenty.com",
|
||||||
|
"slogan": "Twenty is a CRM designed to fit your unique business needs.",
|
||||||
|
"compose": "c2VydmljZXM6CiAgdHdlbnR5OgogICAgaW1hZ2U6ICd0d2VudHljcm0vdHdlbnR5OmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgLSBTRVJWRVJfVVJMPSRTRVJWSUNFX0ZRRE5fVFdFTlRZCiAgICAgIC0gRlJPTlRfQkFTRV9VUkw9JFNFUlZJQ0VfRlFETl9UV0VOVFkKICAgICAgLSBFTkFCTEVfREJfTUlHUkFUSU9OUz10cnVlCiAgICAgIC0gU0lHTl9JTl9QUkVGSUxMRUQ9ZmFsc2UKICAgICAgLSAnU1RPUkFHRV9UWVBFPSR7U1RPUkFHRV9UWVBFOi1sb2NhbH0nCiAgICAgIC0gU1RPUkFHRV9TM19SRUdJT049JFNUT1JBR0VfUzNfUkVHSU9OCiAgICAgIC0gU1RPUkFHRV9TM19OQU1FPSRTVE9SQUdFX1MzX05BTUUKICAgICAgLSBTVE9SQUdFX1MzX0VORFBPSU5UPSRTVE9SQUdFX1MzX0VORFBPSU5UCiAgICAgIC0gQUNDRVNTX1RPS0VOX1NFQ1JFVD0kU0VSVklDRV9CQVNFNjRfMzJfQUNDRVNTCiAgICAgIC0gTE9HSU5fVE9LRU5fU0VDUkVUPSRTRVJWSUNFX0JBU0U2NF8zMl9MT0dJTgogICAgICAtIFJFRlJFU0hfVE9LRU5fU0VDUkVUPSRTRVJWSUNFX0JBU0U2NF8zMl9SRUZSRVNICiAgICAgIC0gRklMRV9UT0tFTl9TRUNSRVQ9JFNFUlZJQ0VfQkFTRTY0XzMyX0ZJTEUKICAgICAgLSBQT1NUR1JFU19BRE1JTl9QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtICdQR19EQVRBQkFTRV9VUkw9cG9zdGdyZXM6Ly9wb3N0Z3JlczokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlczo1NDMyL2RlZmF1bHQnCiAgICAgIC0gRU1BSUxfRlJPTV9BRERSRVNTPSRFTUFJTF9GUk9NX0FERFJFU1MKICAgICAgLSBFTUFJTF9GUk9NX05BTUU9JEVNQUlMX0ZST01fTkFNRQogICAgICAtIEVNQUlMX1NZU1RFTV9BRERSRVNTPSRFTUFJTF9TWVNURU1fQUREUkVTUwogICAgICAtICdFTUFJTF9EUklWRVI9JHtFTUFJTF9EUklWRVI6LWxvZ2dlcn0nCiAgICAgIC0gRU1BSUxfU01UUF9IT1NUPSRFTUFJTF9TTVRQX0hPU1QKICAgICAgLSBFTUFJTF9TTVRQX1BPUlQ9JEVNQUlMX1NNVFBfUE9SVAogICAgICAtIEVNQUlMX1NNVFBfVVNFUj0kRU1BSUxfU01UUF9VU0VSCiAgICAgIC0gRU1BSUxfU01UUF9QQVNTV09SRD0kRU1BSUxfU01UUF9QQVNTV09SRAogICAgICAtICdURUxFTUVUUllfRU5BQkxFRD0ke1RFTEVNRVRSWV9FTkFCTEVEOi1mYWxzZX0nCiAgICAgIC0gJ0NBQ0hFX1NUT1JBR0VfVFlQRT0ke0NBQ0hFX1NUT1JBR0VfVFlQRTotcmVkaXN9JwogICAgICAtIFJFRElTX0hPU1Q9cmVkaXMKICAgICAgLSBSRURJU19QT1JUPTYzNzkKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRAogICAgICAgIC0gY3VybAogICAgICAgIC0gJy1mJwogICAgICAgIC0gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMC9oZWFsdGh6JwogICAgICBpbnRlcnZhbDogMnMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDE1CiAgcG9zdGdyZXM6CiAgICBpbWFnZTogJ3R3ZW50eWNybS90d2VudHktcG9zdGdyZXM6bGF0ZXN0JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gUE9TVEdSRVNfVVNFUj1wb3N0Z3JlcwogICAgICAtIFBPU1RHUkVTX1BBU1NXT1JEPSRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIC0gUE9TVEdSRVNfREI9ZGVmYXVsdAogICAgdm9sdW1lczoKICAgICAgLSAncGctZGF0YTovYml0bmFtaS9wb3N0Z3Jlc3FsJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAogIHJlZGlzOgogICAgaW1hZ2U6ICdyZWRpczpsYXRlc3QnCiAgICB2b2x1bWVzOgogICAgICAtICdyZWRpcy1kYXRhOi9kYXRhJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIHJlZGlzLWNsaQogICAgICAgIC0gcGluZwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCg==",
|
||||||
|
"tags": [
|
||||||
|
"crm",
|
||||||
|
"self-hosted",
|
||||||
|
"dashboard"
|
||||||
|
],
|
||||||
|
"logo": "svgs\/twenty.svg",
|
||||||
|
"minversion": "0.0.0",
|
||||||
|
"port": "3000"
|
||||||
|
},
|
||||||
"umami": {
|
"umami": {
|
||||||
"documentation": "https:\/\/umami.is",
|
"documentation": "https:\/\/umami.is",
|
||||||
"slogan": "Umami is web analytics platform which provides insights into visitor behavior without compromising user privacy.",
|
"slogan": "Umami is web analytics platform which provides insights into visitor behavior without compromising user privacy.",
|
||||||
|
|||||||
Reference in New Issue
Block a user