9970b9b68e
* Realtime streams now powered by electric, and fix the streaming update duplicate issues by converting the electric Shape materialized view into a ReadableStream of changes * Ensure realtime subscription stops when runs are finished, and add an onComplete handle to use realtime hooks * Fix tests
91 lines
1.9 KiB
YAML
91 lines
1.9 KiB
YAML
version: "3"
|
|
|
|
volumes:
|
|
database-data:
|
|
database-data-alt:
|
|
pgadmin-data:
|
|
redis-data:
|
|
|
|
networks:
|
|
app_network:
|
|
external: false
|
|
|
|
services:
|
|
database:
|
|
container_name: database
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.postgres
|
|
restart: always
|
|
volumes:
|
|
- ${DB_VOLUME:-database-data}:/var/lib/postgresql/data/
|
|
environment:
|
|
POSTGRES_USER: postgres
|
|
POSTGRES_PASSWORD: postgres
|
|
POSTGRES_DB: postgres
|
|
networks:
|
|
- app_network
|
|
ports:
|
|
- 5432:5432
|
|
command:
|
|
- -c
|
|
- listen_addresses=*
|
|
- -c
|
|
- wal_level=logical
|
|
- -c
|
|
- shared_preload_libraries=pg_partman_bgw
|
|
|
|
pgadmin:
|
|
container_name: pgadmin
|
|
image: dpage/pgadmin4:8
|
|
restart: always
|
|
environment:
|
|
PGADMIN_DEFAULT_EMAIL: admin@example.com
|
|
PGADMIN_DEFAULT_PASSWORD: admin
|
|
PGADMIN_DISABLE_POSTFIX: "true"
|
|
volumes:
|
|
- pgadmin-data:/var/lib/pgadmin
|
|
- ./pgadmin/servers.json:/pgadmin4/servers.json
|
|
networks:
|
|
- app_network
|
|
ports:
|
|
- 5480:80
|
|
depends_on:
|
|
- database
|
|
|
|
redis:
|
|
container_name: redis
|
|
image: redis:7
|
|
restart: always
|
|
volumes:
|
|
- redis-data:/data
|
|
networks:
|
|
- app_network
|
|
ports:
|
|
- 6379:6379
|
|
|
|
electric:
|
|
image: electricsql/electric:0.9.4
|
|
restart: always
|
|
environment:
|
|
DATABASE_URL: postgresql://postgres:postgres@database:5432/postgres?sslmode=disable
|
|
networks:
|
|
- app_network
|
|
ports:
|
|
- "3060:3000"
|
|
depends_on:
|
|
- database
|
|
|
|
# otel-collector:
|
|
# container_name: otel-collector
|
|
# image: otel/opentelemetry-collector-contrib:latest
|
|
# restart: always
|
|
# command: ["--config", "/etc/otel-collector-config.yaml"]
|
|
# volumes:
|
|
# - ./otel-collector-config.yaml:/etc/otel-collector-config.yaml
|
|
# ports:
|
|
# - "55680:55680"
|
|
# - "55681:55681"
|
|
# - "4317:4317" # OTLP gRPC receiver
|
|
# - "4318:4318" # OTLP http receiver
|