Dokploy

Budibase

Budibase is an open-source low-code platform that saves engineers 100s of hours building forms, portals, and approval apps, securely.

Budibase logo

Configuration

services:
  apps:
    image: budibase.docker.scarf.sh/budibase/apps:3.5.3
    restart: unless-stopped

    environment:
      SELF_HOSTED: 1
      LOG_LEVEL: info
      PORT: 4002
      INTERNAL_API_KEY: ${BB_INTERNAL_API_KEY}
      API_ENCRYPTION_KEY: ${BB_API_ENCRYPTION_KEY}
      JWT_SECRET: ${BB_JWT_SECRET}
      MINIO_ACCESS_KEY: ${BB_MINIO_ACCESS_KEY}
      MINIO_SECRET_KEY: ${BB_MINIO_SECRET_KEY}
      MINIO_URL: http://minio:9000
      REDIS_URL: redis:6379
      REDIS_PASSWORD: ${BB_REDIS_PASSWORD}
      WORKER_URL: http://worker:4003
      COUCH_DB_USERNAME: budibase
      COUCH_DB_PASSWORD: ${BB_COUCHDB_PASSWORD}
      COUCH_DB_URL: http://budibase:${BB_COUCHDB_PASSWORD}@couchdb:5984
      BUDIBASE_ENVIRONMENT: ${BUDIBASE_ENVIRONMENT:-PRODUCTION}
      ENABLE_ANALYTICS: ${ENABLE_ANALYTICS:-true}
      BB_ADMIN_USER_EMAIL: ''
      BB_ADMIN_USER_PASSWORD: ''
    depends_on:
      worker:
        condition: service_healthy
      redis:
        condition: service_healthy
    healthcheck:
      test:
        - CMD
        - wget
        - '--spider'
        - '-qO-'
        - 'http://localhost:4002/health'
      interval: 15s
      timeout: 15s
      retries: 5
      start_period: 10s
  worker:
    image: budibase.docker.scarf.sh/budibase/worker:3.2.25
    restart: unless-stopped

    environment:
      SELF_HOSTED: 1
      LOG_LEVEL: info
      PORT: 4003
      CLUSTER_PORT: 10000
      INTERNAL_API_KEY: ${BB_INTERNAL_API_KEY}
      API_ENCRYPTION_KEY: ${BB_API_ENCRYPTION_KEY}
      JWT_SECRET: ${BB_JWT_SECRET}
      MINIO_ACCESS_KEY: ${BB_MINIO_ACCESS_KEY}
      MINIO_SECRET_KEY: ${BB_MINIO_SECRET_KEY}
      APPS_URL: http://apps:4002
      MINIO_URL: http://minio:9000
      REDIS_URL: redis:6379
      REDIS_PASSWORD: ${BB_REDIS_PASSWORD}
      COUCH_DB_USERNAME: budibase
      COUCH_DB_PASSWORD: ${BB_COUCHDB_PASSWORD}
      COUCH_DB_URL: http://budibase:${BB_COUCHDB_PASSWORD}@couchdb:5984
      BUDIBASE_ENVIRONMENT: ${BUDIBASE_ENVIRONMENT:-PRODUCTION}
      ENABLE_ANALYTICS: ${ENABLE_ANALYTICS:-true}
    depends_on:
      redis:
        condition: service_healthy
      minio:
        condition: service_healthy
    healthcheck:
      test:
        - CMD
        - wget
        - '--spider'
        - '-qO-'
        - 'http://localhost:4003/health'
      interval: 15s
      timeout: 15s
      retries: 5
      start_period: 10s
  minio:
    image: minio/minio:RELEASE.2024-11-07T00-52-20Z
    restart: unless-stopped

    volumes:
      - 'minio_data:/data'
    environment:
      MINIO_ROOT_USER: ${BB_MINIO_ACCESS_KEY}
      MINIO_ROOT_PASSWORD: ${BB_MINIO_SECRET_KEY}
      MINIO_BROWSER: off
    command: 'server /data --console-address ":9001"'
    healthcheck:
      test:
        - CMD
        - curl
        - '-f'
        - 'http://localhost:9000/minio/health/live'
      interval: 30s
      timeout: 20s
      retries: 3
  proxy:
    image: budibase/proxy:3.2.25
    restart: unless-stopped

    environment:
      PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND: 10
      PROXY_RATE_LIMIT_API_PER_SECOND: 20
      APPS_UPSTREAM_URL: http://apps:4002
      WORKER_UPSTREAM_URL: http://worker:4003
      MINIO_UPSTREAM_URL: http://minio:9000
      COUCHDB_UPSTREAM_URL: http://couchdb:5984
      WATCHTOWER_UPSTREAM_URL: http://watchtower:8080
      RESOLVER: 127.0.0.11
    depends_on:
      minio:
        condition: service_healthy
      worker:
        condition: service_healthy
      apps:
        condition: service_healthy
      couchdb:
        condition: service_healthy
    healthcheck:
      test:
        - CMD
        - curl
        - '-f'
        - 'http://localhost:10000/'
      interval: 15s
      timeout: 15s
      retries: 5
      start_period: 10s
  couchdb:
    image: budibase/couchdb:v3.3.3
    restart: unless-stopped

    environment:
      COUCHDB_USER: budibase
      COUCHDB_PASSWORD: ${BB_COUCHDB_PASSWORD}
      TARGETBUILD: docker-compose
    healthcheck:
      test:
        - CMD
        - curl
        - '-f'
        - 'http://localhost:5984/'
      interval: 15s
      timeout: 15s
      retries: 5
      start_period: 10s
    volumes:
      - 'couchdb3_data:/opt/couchdb/data'
  redis:
    image: redis:7.2-alpine

    restart: unless-stopped
    command: 'redis-server --requirepass "${BB_REDIS_PASSWORD}"'
    volumes:
      - 'redis_data:/data'
    healthcheck:
      test:
        - CMD
        - redis-cli
        - '-a'
        - ${BB_REDIS_PASSWORD}
        - ping
      interval: 15s
      timeout: 15s
      retries: 5
      start_period: 10s
  watchtower:
    restart: unless-stopped

    image: containrrr/watchtower:1.7.1
    volumes:
      - '/var/run/docker.sock:/var/run/docker.sock'
    command: '--debug --http-api-update bbapps bbworker bbproxy'
    environment:
      WATCHTOWER_HTTP_API: true
      WATCHTOWER_HTTP_API_TOKEN: ${BB_WATCHTOWER_PASSWORD}
      WATCHTOWER_CLEANUP: true
    labels:
      - com.centurylinklabs.watchtower.enable=false


volumes:
  minio_data:
  couchdb3_data:
  redis_data:
[variables]
main_domain = "${domain}"
api_key = "${password:32}"
encryption_key = "${password:32}"
jwt_secret = "${password:32}"
couchdb_password = "${password:32}"
redis_password = "${password:32}"
minio_access_key = "${password:32}"
minio_secret_key = "${password:32}"
watchtower_password = "${password:32}"

[config]
env = [
  "BB_HOST=${main_domain}",
  "BB_INTERNAL_API_KEY=${api_key}",
  "BB_API_ENCRYPTION_KEY=${encryption_key}",
  "BB_JWT_SECRET=${jwt_secret}",
  "BB_COUCHDB_PASSWORD=${couchdb_password}",
  "BB_REDIS_PASSWORD=${redis_password}",
  "BB_WATCHTOWER_PASSWORD=${watchtower_password}",
  "BB_MINIO_ACCESS_KEY=${minio_access_key}",
  "BB_MINIO_SECRET_KEY=${minio_secret_key}",
]
mounts = []

[[config.domains]]
serviceName = "proxy"
port = 10_000
host = "${main_domain}"

Base64

To import this template in Dokploy: create a Compose service → AdvancedBase64 import and paste the content below:

ewogICJjb21wb3NlIjogInNlcnZpY2VzOlxuICBhcHBzOlxuICAgIGltYWdlOiBidWRpYmFzZS5kb2NrZXIuc2NhcmYuc2gvYnVkaWJhc2UvYXBwczozLjUuM1xuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG5cbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIFNFTEZfSE9TVEVEOiAxXG4gICAgICBMT0dfTEVWRUw6IGluZm9cbiAgICAgIFBPUlQ6IDQwMDJcbiAgICAgIElOVEVSTkFMX0FQSV9LRVk6ICR7QkJfSU5URVJOQUxfQVBJX0tFWX1cbiAgICAgIEFQSV9FTkNSWVBUSU9OX0tFWTogJHtCQl9BUElfRU5DUllQVElPTl9LRVl9XG4gICAgICBKV1RfU0VDUkVUOiAke0JCX0pXVF9TRUNSRVR9XG4gICAgICBNSU5JT19BQ0NFU1NfS0VZOiAke0JCX01JTklPX0FDQ0VTU19LRVl9XG4gICAgICBNSU5JT19TRUNSRVRfS0VZOiAke0JCX01JTklPX1NFQ1JFVF9LRVl9XG4gICAgICBNSU5JT19VUkw6IGh0dHA6Ly9taW5pbzo5MDAwXG4gICAgICBSRURJU19VUkw6IHJlZGlzOjYzNzlcbiAgICAgIFJFRElTX1BBU1NXT1JEOiAke0JCX1JFRElTX1BBU1NXT1JEfVxuICAgICAgV09SS0VSX1VSTDogaHR0cDovL3dvcmtlcjo0MDAzXG4gICAgICBDT1VDSF9EQl9VU0VSTkFNRTogYnVkaWJhc2VcbiAgICAgIENPVUNIX0RCX1BBU1NXT1JEOiAke0JCX0NPVUNIREJfUEFTU1dPUkR9XG4gICAgICBDT1VDSF9EQl9VUkw6IGh0dHA6Ly9idWRpYmFzZToke0JCX0NPVUNIREJfUEFTU1dPUkR9QGNvdWNoZGI6NTk4NFxuICAgICAgQlVESUJBU0VfRU5WSVJPTk1FTlQ6ICR7QlVESUJBU0VfRU5WSVJPTk1FTlQ6LVBST0RVQ1RJT059XG4gICAgICBFTkFCTEVfQU5BTFlUSUNTOiAke0VOQUJMRV9BTkFMWVRJQ1M6LXRydWV9XG4gICAgICBCQl9BRE1JTl9VU0VSX0VNQUlMOiAnJ1xuICAgICAgQkJfQURNSU5fVVNFUl9QQVNTV09SRDogJydcbiAgICBkZXBlbmRzX29uOlxuICAgICAgd29ya2VyOlxuICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeVxuICAgICAgcmVkaXM6XG4gICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5XG4gICAgaGVhbHRoY2hlY2s6XG4gICAgICB0ZXN0OlxuICAgICAgICAtIENNRFxuICAgICAgICAtIHdnZXRcbiAgICAgICAgLSAnLS1zcGlkZXInXG4gICAgICAgIC0gJy1xTy0nXG4gICAgICAgIC0gJ2h0dHA6Ly9sb2NhbGhvc3Q6NDAwMi9oZWFsdGgnXG4gICAgICBpbnRlcnZhbDogMTVzXG4gICAgICB0aW1lb3V0OiAxNXNcbiAgICAgIHJldHJpZXM6IDVcbiAgICAgIHN0YXJ0X3BlcmlvZDogMTBzXG4gIHdvcmtlcjpcbiAgICBpbWFnZTogYnVkaWJhc2UuZG9ja2VyLnNjYXJmLnNoL2J1ZGliYXNlL3dvcmtlcjozLjIuMjVcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICBTRUxGX0hPU1RFRDogMVxuICAgICAgTE9HX0xFVkVMOiBpbmZvXG4gICAgICBQT1JUOiA0MDAzXG4gICAgICBDTFVTVEVSX1BPUlQ6IDEwMDAwXG4gICAgICBJTlRFUk5BTF9BUElfS0VZOiAke0JCX0lOVEVSTkFMX0FQSV9LRVl9XG4gICAgICBBUElfRU5DUllQVElPTl9LRVk6ICR7QkJfQVBJX0VOQ1JZUFRJT05fS0VZfVxuICAgICAgSldUX1NFQ1JFVDogJHtCQl9KV1RfU0VDUkVUfVxuICAgICAgTUlOSU9fQUNDRVNTX0tFWTogJHtCQl9NSU5JT19BQ0NFU1NfS0VZfVxuICAgICAgTUlOSU9fU0VDUkVUX0tFWTogJHtCQl9NSU5JT19TRUNSRVRfS0VZfVxuICAgICAgQVBQU19VUkw6IGh0dHA6Ly9hcHBzOjQwMDJcbiAgICAgIE1JTklPX1VSTDogaHR0cDovL21pbmlvOjkwMDBcbiAgICAgIFJFRElTX1VSTDogcmVkaXM6NjM3OVxuICAgICAgUkVESVNfUEFTU1dPUkQ6ICR7QkJfUkVESVNfUEFTU1dPUkR9XG4gICAgICBDT1VDSF9EQl9VU0VSTkFNRTogYnVkaWJhc2VcbiAgICAgIENPVUNIX0RCX1BBU1NXT1JEOiAke0JCX0NPVUNIREJfUEFTU1dPUkR9XG4gICAgICBDT1VDSF9EQl9VUkw6IGh0dHA6Ly9idWRpYmFzZToke0JCX0NPVUNIREJfUEFTU1dPUkR9QGNvdWNoZGI6NTk4NFxuICAgICAgQlVESUJBU0VfRU5WSVJPTk1FTlQ6ICR7QlVESUJBU0VfRU5WSVJPTk1FTlQ6LVBST0RVQ1RJT059XG4gICAgICBFTkFCTEVfQU5BTFlUSUNTOiAke0VOQUJMRV9BTkFMWVRJQ1M6LXRydWV9XG4gICAgZGVwZW5kc19vbjpcbiAgICAgIHJlZGlzOlxuICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeVxuICAgICAgbWluaW86XG4gICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5XG4gICAgaGVhbHRoY2hlY2s6XG4gICAgICB0ZXN0OlxuICAgICAgICAtIENNRFxuICAgICAgICAtIHdnZXRcbiAgICAgICAgLSAnLS1zcGlkZXInXG4gICAgICAgIC0gJy1xTy0nXG4gICAgICAgIC0gJ2h0dHA6Ly9sb2NhbGhvc3Q6NDAwMy9oZWFsdGgnXG4gICAgICBpbnRlcnZhbDogMTVzXG4gICAgICB0aW1lb3V0OiAxNXNcbiAgICAgIHJldHJpZXM6IDVcbiAgICAgIHN0YXJ0X3BlcmlvZDogMTBzXG4gIG1pbmlvOlxuICAgIGltYWdlOiBtaW5pby9taW5pbzpSRUxFQVNFLjIwMjQtMTEtMDdUMDAtNTItMjBaXG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcblxuICAgIHZvbHVtZXM6XG4gICAgICAtICdtaW5pb19kYXRhOi9kYXRhJ1xuICAgIGVudmlyb25tZW50OlxuICAgICAgTUlOSU9fUk9PVF9VU0VSOiAke0JCX01JTklPX0FDQ0VTU19LRVl9XG4gICAgICBNSU5JT19ST09UX1BBU1NXT1JEOiAke0JCX01JTklPX1NFQ1JFVF9LRVl9XG4gICAgICBNSU5JT19CUk9XU0VSOiBvZmZcbiAgICBjb21tYW5kOiAnc2VydmVyIC9kYXRhIC0tY29uc29sZS1hZGRyZXNzIFwiOjkwMDFcIidcbiAgICBoZWFsdGhjaGVjazpcbiAgICAgIHRlc3Q6XG4gICAgICAgIC0gQ01EXG4gICAgICAgIC0gY3VybFxuICAgICAgICAtICctZidcbiAgICAgICAgLSAnaHR0cDovL2xvY2FsaG9zdDo5MDAwL21pbmlvL2hlYWx0aC9saXZlJ1xuICAgICAgaW50ZXJ2YWw6IDMwc1xuICAgICAgdGltZW91dDogMjBzXG4gICAgICByZXRyaWVzOiAzXG4gIHByb3h5OlxuICAgIGltYWdlOiBidWRpYmFzZS9wcm94eTozLjIuMjVcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICBQUk9YWV9SQVRFX0xJTUlUX1dFQkhPT0tTX1BFUl9TRUNPTkQ6IDEwXG4gICAgICBQUk9YWV9SQVRFX0xJTUlUX0FQSV9QRVJfU0VDT05EOiAyMFxuICAgICAgQVBQU19VUFNUUkVBTV9VUkw6IGh0dHA6Ly9hcHBzOjQwMDJcbiAgICAgIFdPUktFUl9VUFNUUkVBTV9VUkw6IGh0dHA6Ly93b3JrZXI6NDAwM1xuICAgICAgTUlOSU9fVVBTVFJFQU1fVVJMOiBodHRwOi8vbWluaW86OTAwMFxuICAgICAgQ09VQ0hEQl9VUFNUUkVBTV9VUkw6IGh0dHA6Ly9jb3VjaGRiOjU5ODRcbiAgICAgIFdBVENIVE9XRVJfVVBTVFJFQU1fVVJMOiBodHRwOi8vd2F0Y2h0b3dlcjo4MDgwXG4gICAgICBSRVNPTFZFUjogMTI3LjAuMC4xMVxuICAgIGRlcGVuZHNfb246XG4gICAgICBtaW5pbzpcbiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHlcbiAgICAgIHdvcmtlcjpcbiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHlcbiAgICAgIGFwcHM6XG4gICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5XG4gICAgICBjb3VjaGRiOlxuICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeVxuICAgIGhlYWx0aGNoZWNrOlxuICAgICAgdGVzdDpcbiAgICAgICAgLSBDTURcbiAgICAgICAgLSBjdXJsXG4gICAgICAgIC0gJy1mJ1xuICAgICAgICAtICdodHRwOi8vbG9jYWxob3N0OjEwMDAwLydcbiAgICAgIGludGVydmFsOiAxNXNcbiAgICAgIHRpbWVvdXQ6IDE1c1xuICAgICAgcmV0cmllczogNVxuICAgICAgc3RhcnRfcGVyaW9kOiAxMHNcbiAgY291Y2hkYjpcbiAgICBpbWFnZTogYnVkaWJhc2UvY291Y2hkYjp2My4zLjNcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICBDT1VDSERCX1VTRVI6IGJ1ZGliYXNlXG4gICAgICBDT1VDSERCX1BBU1NXT1JEOiAke0JCX0NPVUNIREJfUEFTU1dPUkR9XG4gICAgICBUQVJHRVRCVUlMRDogZG9ja2VyLWNvbXBvc2VcbiAgICBoZWFsdGhjaGVjazpcbiAgICAgIHRlc3Q6XG4gICAgICAgIC0gQ01EXG4gICAgICAgIC0gY3VybFxuICAgICAgICAtICctZidcbiAgICAgICAgLSAnaHR0cDovL2xvY2FsaG9zdDo1OTg0LydcbiAgICAgIGludGVydmFsOiAxNXNcbiAgICAgIHRpbWVvdXQ6IDE1c1xuICAgICAgcmV0cmllczogNVxuICAgICAgc3RhcnRfcGVyaW9kOiAxMHNcbiAgICB2b2x1bWVzOlxuICAgICAgLSAnY291Y2hkYjNfZGF0YTovb3B0L2NvdWNoZGIvZGF0YSdcbiAgcmVkaXM6XG4gICAgaW1hZ2U6IHJlZGlzOjcuMi1hbHBpbmVcblxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgY29tbWFuZDogJ3JlZGlzLXNlcnZlciAtLXJlcXVpcmVwYXNzIFwiJHtCQl9SRURJU19QQVNTV09SRH1cIidcbiAgICB2b2x1bWVzOlxuICAgICAgLSAncmVkaXNfZGF0YTovZGF0YSdcbiAgICBoZWFsdGhjaGVjazpcbiAgICAgIHRlc3Q6XG4gICAgICAgIC0gQ01EXG4gICAgICAgIC0gcmVkaXMtY2xpXG4gICAgICAgIC0gJy1hJ1xuICAgICAgICAtICR7QkJfUkVESVNfUEFTU1dPUkR9XG4gICAgICAgIC0gcGluZ1xuICAgICAgaW50ZXJ2YWw6IDE1c1xuICAgICAgdGltZW91dDogMTVzXG4gICAgICByZXRyaWVzOiA1XG4gICAgICBzdGFydF9wZXJpb2Q6IDEwc1xuICB3YXRjaHRvd2VyOlxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkICAgXG4gXG4gICAgaW1hZ2U6IGNvbnRhaW5ycnIvd2F0Y2h0b3dlcjoxLjcuMVxuICAgIHZvbHVtZXM6XG4gICAgICAtICcvdmFyL3J1bi9kb2NrZXIuc29jazovdmFyL3J1bi9kb2NrZXIuc29jaydcbiAgICBjb21tYW5kOiAnLS1kZWJ1ZyAtLWh0dHAtYXBpLXVwZGF0ZSBiYmFwcHMgYmJ3b3JrZXIgYmJwcm94eSdcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIFdBVENIVE9XRVJfSFRUUF9BUEk6IHRydWVcbiAgICAgIFdBVENIVE9XRVJfSFRUUF9BUElfVE9LRU46ICR7QkJfV0FUQ0hUT1dFUl9QQVNTV09SRH1cbiAgICAgIFdBVENIVE9XRVJfQ0xFQU5VUDogdHJ1ZVxuICAgIGxhYmVsczpcbiAgICAgIC0gY29tLmNlbnR1cnlsaW5rbGFicy53YXRjaHRvd2VyLmVuYWJsZT1mYWxzZVxuXG5cbnZvbHVtZXM6XG4gIG1pbmlvX2RhdGE6XG4gIGNvdWNoZGIzX2RhdGE6XG4gIHJlZGlzX2RhdGE6ICIsCiAgImNvbmZpZyI6ICJbdmFyaWFibGVzXVxubWFpbl9kb21haW4gPSBcIiR7ZG9tYWlufVwiXG5hcGlfa2V5ID0gXCIke3Bhc3N3b3JkOjMyfVwiXG5lbmNyeXB0aW9uX2tleSA9IFwiJHtwYXNzd29yZDozMn1cIlxuand0X3NlY3JldCA9IFwiJHtwYXNzd29yZDozMn1cIlxuY291Y2hkYl9wYXNzd29yZCA9IFwiJHtwYXNzd29yZDozMn1cIlxucmVkaXNfcGFzc3dvcmQgPSBcIiR7cGFzc3dvcmQ6MzJ9XCJcbm1pbmlvX2FjY2Vzc19rZXkgPSBcIiR7cGFzc3dvcmQ6MzJ9XCJcbm1pbmlvX3NlY3JldF9rZXkgPSBcIiR7cGFzc3dvcmQ6MzJ9XCJcbndhdGNodG93ZXJfcGFzc3dvcmQgPSBcIiR7cGFzc3dvcmQ6MzJ9XCJcblxuW2NvbmZpZ11cbmVudiA9IFtcbiAgXCJCQl9IT1NUPSR7bWFpbl9kb21haW59XCIsXG4gIFwiQkJfSU5URVJOQUxfQVBJX0tFWT0ke2FwaV9rZXl9XCIsXG4gIFwiQkJfQVBJX0VOQ1JZUFRJT05fS0VZPSR7ZW5jcnlwdGlvbl9rZXl9XCIsXG4gIFwiQkJfSldUX1NFQ1JFVD0ke2p3dF9zZWNyZXR9XCIsXG4gIFwiQkJfQ09VQ0hEQl9QQVNTV09SRD0ke2NvdWNoZGJfcGFzc3dvcmR9XCIsXG4gIFwiQkJfUkVESVNfUEFTU1dPUkQ9JHtyZWRpc19wYXNzd29yZH1cIixcbiAgXCJCQl9XQVRDSFRPV0VSX1BBU1NXT1JEPSR7d2F0Y2h0b3dlcl9wYXNzd29yZH1cIixcbiAgXCJCQl9NSU5JT19BQ0NFU1NfS0VZPSR7bWluaW9fYWNjZXNzX2tleX1cIixcbiAgXCJCQl9NSU5JT19TRUNSRVRfS0VZPSR7bWluaW9fc2VjcmV0X2tleX1cIixcbl1cbm1vdW50cyA9IFtdXG5cbltbY29uZmlnLmRvbWFpbnNdXVxuc2VydmljZU5hbWUgPSBcInByb3h5XCJcbnBvcnQgPSAxMF8wMDBcbmhvc3QgPSBcIiR7bWFpbl9kb21haW59XCJcbiIKfQ==

Tags

database, low-code, nocode, applications


Version: 3.5.3

On this page