Skip to content

Instantly share code, notes, and snippets.

@jordangarcia
Created January 6, 2026 23:23
Show Gist options
  • Select an option

  • Save jordangarcia/2033d2aafb41e390ec312e96097fe3e6 to your computer and use it in GitHub Desktop.

Select an option

Save jordangarcia/2033d2aafb41e390ec312e96097fe3e6 to your computer and use it in GitHub Desktop.
version: '0.5'
log_level: info
log_location: /Users/jordan/.gamma/logs/process-compose.log
log_configuration:
disable_json: true
fields_order: ['level', 'time', 'message']
timestamp_format: '2006-01-02 15:04:05'
add_timestamp: true
flush_each_line: true
environment:
- GAMMA_ROOT=${PWD}
processes:
# 1. Ensure Docker is running
before-docker-check:
command: |
if ! docker info >/dev/null 2>&1; then
echo 'Docker not running, starting...'
open --background -a Docker
echo 'Waiting for Docker to start...'
while ! docker info >/dev/null 2>&1; do sleep 1; done
echo 'Docker is ready'
else
echo 'Docker already running'
fi
availability:
restart: 'no'
# 2. Start local services (postgres, redis, etc)
before-local-services:
command: bash -c "./scripts/start_local_services.sh"
depends_on:
before-docker-check:
condition: process_completed_successfully
availability:
restart: 'no'
# 3. Application services
server:
command: bash -c "source $GAMMA_ROOT/packages/dev-cli/bin/setup-service-env.sh && yarn dev"
working_dir: ./packages/server
log_location: /Users/jordan/.gamma/logs/server.log
log_configuration:
disable_json: true
fields_order: ['message']
no_metadata: true
flush_each_line: true
depends_on:
before-local-services:
condition: process_completed_successfully
availability:
restart: on_failure
max_restarts: 1
backoff_seconds: 2
readiness_probe:
http_get:
host: localhost
scheme: https
port: 7000
path: /healthcheck
initial_delay_seconds: 10
period_seconds: 5
timeout_seconds: 2
failure_threshold: 3
client:
command: bash -c "source $GAMMA_ROOT/packages/dev-cli/bin/setup-service-env.sh && yarn dev:light:turbo"
working_dir: ./packages/client
log_location: /Users/jordan/.gamma/logs/client.log
log_configuration:
disable_json: true
fields_order: ['message']
no_metadata: true
flush_each_line: true
depends_on:
before-local-services:
condition: process_completed_successfully
availability:
restart: on_failure
max_restarts: 1
backoff_seconds: 2
readiness_probe:
http_get:
host: localhost
scheme: https
port: 3000
initial_delay_seconds: 10
period_seconds: 5
timeout_seconds: 60
hocuspocus:
command: bash -c "source $GAMMA_ROOT/packages/dev-cli/bin/setup-service-env.sh && yarn dev"
working_dir: ./packages/hocuspocus
log_location: /Users/jordan/.gamma/logs/hocuspocus.log
log_configuration:
disable_json: true
fields_order: ['message']
no_metadata: true
flush_each_line: true
depends_on:
before-local-services:
condition: process_completed_successfully
availability:
restart: on_failure
max_restarts: 1
backoff_seconds: 2
readiness_probe:
http_get:
host: localhost
scheme: https
port: 7001
path: /healthcheck
initial_delay_seconds: 5
period_seconds: 5
timeout_seconds: 2
failure_threshold: 3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment