Dokploy

Spliit

Spliit is a lightweight, self-hosted alternative to Auth0 and Clerk. Open-source, cost-effective, and developer-friendly, it provides secure authentication (OAuth, email/password, social logins) with full control over your data. No per-user fees, easy to integrate, and perfect for startups or privacy-focused projects.

Spliit logo

Configuration

services:
  spliit:
    image: ghcr.io/spliit-app/spliit:1.19.0
    restart: unless-stopped
    env_file:
      - .env
    depends_on:
      spliit-db:
        condition: service_healthy
  spliit-db:
    image: pgvector/pgvector:pg16
    volumes:
      - ${DB_DATA_LOCATION}:/var/lib/DBql/data
    environment:
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_DB: ${DB_DATABASE:-spliit}
      POSTGRES_INITDB_ARGS: '--data-checksums'
      POSTGRES_HOST_AUTH_METHOD: trust
    healthcheck:
      test:
        ['CMD', 'pg_isready', '-U', "${DB_USERNAME}", '-d', "${DB_DATABASE:-spliit}"]
      interval: 10s
      timeout: 5s
      retries: 5
    restart: unless-stopped
    env_file:
      - .env
[variables]
main_domain = "${domain}"
secret_key  = "${password}"
project_name = "spliit"

[config]
mounts = []

[[config.domains]]
serviceName = "spliit"
port        = 3000
host        = "${main_domain}"

[config.env]

DB_USERNAME     = "${project_name}-admin"
DB_PASSWORD     = "${secret_key}"
DB_DATA_LOCATION = "/data/${project_name}/database"
DB_DATABASE     = "${project_name}"

# --- PostgreSQL ---
POSTGRES_PRISMA_URL       = "postgresql://${DB_USERNAME}:${DB_PASSWORD}@${project_name}-db:5432/${DB_DATABASE}"
POSTGRES_URL_NON_POOLING  = "postgresql://${DB_USERNAME}:${DB_PASSWORD}@${project_name}-db:5432/${DB_DATABASE}"

Base64

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

ewogICJjb21wb3NlIjogInNlcnZpY2VzOlxuICBzcGxpaXQ6XG4gICAgaW1hZ2U6IGdoY3IuaW8vc3BsaWl0LWFwcC9zcGxpaXQ6MS4xOS4wXG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBlbnZfZmlsZTpcbiAgICAgIC0gLmVudlxuICAgIGRlcGVuZHNfb246XG4gICAgICBzcGxpaXQtZGI6XG4gICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5XG4gIHNwbGlpdC1kYjpcbiAgICBpbWFnZTogcGd2ZWN0b3IvcGd2ZWN0b3I6cGcxNlxuICAgIHZvbHVtZXM6XG4gICAgICAtICR7REJfREFUQV9MT0NBVElPTn06L3Zhci9saWIvREJxbC9kYXRhXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICBQT1NUR1JFU19VU0VSOiAke0RCX1VTRVJOQU1FfVxuICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICR7REJfUEFTU1dPUkR9XG4gICAgICBQT1NUR1JFU19EQjogJHtEQl9EQVRBQkFTRTotc3BsaWl0fVxuICAgICAgUE9TVEdSRVNfSU5JVERCX0FSR1M6ICctLWRhdGEtY2hlY2tzdW1zJ1xuICAgICAgUE9TVEdSRVNfSE9TVF9BVVRIX01FVEhPRDogdHJ1c3RcbiAgICBoZWFsdGhjaGVjazpcbiAgICAgIHRlc3Q6XG4gICAgICAgIFsnQ01EJywgJ3BnX2lzcmVhZHknLCAnLVUnLCBcIiR7REJfVVNFUk5BTUV9XCIsICctZCcsIFwiJHtEQl9EQVRBQkFTRTotc3BsaWl0fVwiXVxuICAgICAgaW50ZXJ2YWw6IDEwc1xuICAgICAgdGltZW91dDogNXNcbiAgICAgIHJldHJpZXM6IDVcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGVudl9maWxlOlxuICAgICAgLSAuZW52IiwKICAiY29uZmlnIjogIlxuW3ZhcmlhYmxlc11cbm1haW5fZG9tYWluID0gXCIke2RvbWFpbn1cIlxuc2VjcmV0X2tleSAgPSBcIiR7cGFzc3dvcmR9XCJcbnByb2plY3RfbmFtZSA9IFwic3BsaWl0XCJcblxuW2NvbmZpZ11cbm1vdW50cyA9IFtdXG5cbltbY29uZmlnLmRvbWFpbnNdXVxuc2VydmljZU5hbWUgPSBcInNwbGlpdFwiXG5wb3J0ICAgICAgICA9IDMwMDBcbmhvc3QgICAgICAgID0gXCIke21haW5fZG9tYWlufVwiXG5cbltjb25maWcuZW52XVxuXG5EQl9VU0VSTkFNRSAgICAgPSBcIiR7cHJvamVjdF9uYW1lfS1hZG1pblwiXG5EQl9QQVNTV09SRCAgICAgPSBcIiR7c2VjcmV0X2tleX1cIlxuREJfREFUQV9MT0NBVElPTiA9IFwiL2RhdGEvJHtwcm9qZWN0X25hbWV9L2RhdGFiYXNlXCJcbkRCX0RBVEFCQVNFICAgICA9IFwiJHtwcm9qZWN0X25hbWV9XCJcblxuIyAtLS0gUG9zdGdyZVNRTCAtLS1cblBPU1RHUkVTX1BSSVNNQV9VUkwgICAgICAgPSBcInBvc3RncmVzcWw6Ly8ke0RCX1VTRVJOQU1FfToke0RCX1BBU1NXT1JEfUAke3Byb2plY3RfbmFtZX0tZGI6NTQzMi8ke0RCX0RBVEFCQVNFfVwiXG5QT1NUR1JFU19VUkxfTk9OX1BPT0xJTkcgID0gXCJwb3N0Z3Jlc3FsOi8vJHtEQl9VU0VSTkFNRX06JHtEQl9QQVNTV09SRH1AJHtwcm9qZWN0X25hbWV9LWRiOjU0MzIvJHtEQl9EQVRBQkFTRX1cIiIKfQ==

Tags

budgeting, finance, money


Version: latest

On this page