87 lines
1.8 KiB
YAML
87 lines
1.8 KiB
YAML
version: "3"
|
|
|
|
volumes:
|
|
database-data:
|
|
database-data-alt:
|
|
pgadmin-data:
|
|
redis-data:
|
|
|
|
networks:
|
|
app_network:
|
|
external: false
|
|
|
|
services:
|
|
database:
|
|
container_name: database
|
|
image: postgres:14
|
|
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
|
|
|
|
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.7.5
|
|
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
|