mirror of
https://github.com/coollabsio/coolify.git
synced 2026-11-06 13:10:37 -04:00
Co-authored-by: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com>
55 lines
2.1 KiB
YAML
55 lines
2.1 KiB
YAML
# documentation: https://zero.rocicorp.dev/docs/deployment
|
|
# slogan: Query-driven sync engine for TypeScript apps backed by Postgres.
|
|
# category: backend
|
|
# tags: sync, realtime, postgres, typescript, local-first
|
|
# logo: svgs/zero.svg
|
|
# port: 4848
|
|
|
|
services:
|
|
zero:
|
|
image: rocicorp/zero:1.6.2
|
|
# stop_grace_period: 10m
|
|
environment:
|
|
- SERVICE_URL_ZERO_4848
|
|
- ZERO_UPSTREAM_DB=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_64_POSTGRES}@postgres:5432/${POSTGRES_DB}
|
|
- ZERO_CVR_DB=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_64_POSTGRES}@postgres:5432/${POSTGRES_DB}
|
|
- ZERO_CHANGE_DB=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_64_POSTGRES}@postgres:5432/${POSTGRES_DB}
|
|
- ZERO_REPLICA_FILE=/data/replica.db
|
|
- ZERO_ADMIN_PASSWORD=${SERVICE_PASSWORD_64_ADMIN}
|
|
- ZERO_QUERY_URL=${ZERO_QUERY_URL:?Set the URL of your API /query endpoint}
|
|
- ZERO_MUTATE_URL=${ZERO_MUTATE_URL:?Set the URL of your API /mutate endpoint}
|
|
- ZERO_ENABLE_CRUD_MUTATIONS=${ZERO_ENABLE_CRUD_MUTATIONS:-false}
|
|
- ZERO_NUM_SYNC_WORKERS=${ZERO_NUM_SYNC_WORKERS:-1}
|
|
- ZERO_APP_ID=${ZERO_APP_ID:-zero}
|
|
- ZERO_LOG_LEVEL=${ZERO_LOG_LEVEL:-info}
|
|
- ZERO_ENABLE_TELEMETRY=${ZERO_ENABLE_TELEMETRY:-true}
|
|
- ZERO_LAZY_STARTUP=${ZERO_LAZY_STARTUP:-false}
|
|
- ZERO_QUERY_API_KEY=${ZERO_QUERY_API_KEY:-}
|
|
- ZERO_MUTATE_API_KEY=${ZERO_MUTATE_API_KEY:-}
|
|
volumes:
|
|
- zero-data:/data
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://127.0.0.1:4848/keepalive"]
|
|
interval: 5s
|
|
timeout: 20s
|
|
retries: 10
|
|
start_period: 60s
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
|
|
postgres:
|
|
image: postgres:18-alpine
|
|
command: ["postgres", "-c", "wal_level=logical"]
|
|
environment:
|
|
- POSTGRES_USER=${SERVICE_USER_POSTGRES}
|
|
- POSTGRES_PASSWORD=${SERVICE_PASSWORD_64_POSTGRES}
|
|
- POSTGRES_DB=${POSTGRES_DB:-zero-db}
|
|
volumes:
|
|
- postgres-data:/var/lib/postgresql
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
|
|
interval: 10s
|
|
timeout: 20s
|
|
retries: 10
|