85 lines
2.3 KiB
YAML
85 lines
2.3 KiB
YAML
services:
|
|
|
|
# MongoDB
|
|
# --------------------------------------------------------------------------------
|
|
# Used by event store and read store for managing and reading application data.
|
|
|
|
mongo:
|
|
image: mongo:8
|
|
restart: unless-stopped
|
|
ports:
|
|
- "27017:27017"
|
|
environment:
|
|
MONGO_INITDB_ROOT_USERNAME: root
|
|
MONGO_INITDB_ROOT_PASSWORD: password
|
|
volumes:
|
|
- ./.volumes/mongo/local:/data/db
|
|
networks:
|
|
- localdev
|
|
|
|
# Super Tokens Database
|
|
# --------------------------------------------------------------------------------
|
|
# Used by supertokens instance to store and manage principals.
|
|
|
|
stdb:
|
|
image: 'postgres:latest'
|
|
environment:
|
|
POSTGRES_USER: supertokens_user
|
|
POSTGRES_PASSWORD: somePassword
|
|
POSTGRES_DB: supertokens
|
|
ports:
|
|
- 5432:5432
|
|
networks:
|
|
- localdev
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ['CMD', 'pg_isready', '-U', 'supertokens_user', '-d', 'supertokens']
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
# Super Tokens
|
|
# --------------------------------------------------------------------------------
|
|
|
|
supertokens:
|
|
image: registry.supertokens.io/supertokens/supertokens-postgresql:latest
|
|
depends_on:
|
|
stdb:
|
|
condition: service_healthy
|
|
ports:
|
|
- 3567:3567
|
|
environment:
|
|
POSTGRESQL_CONNECTION_URI: "postgresql://supertokens_user:somePassword@stdb:5432/supertokens"
|
|
networks:
|
|
- localdev
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: >
|
|
bash -c 'exec 3<>/dev/tcp/127.0.0.1/3567 && echo -e "GET /hello HTTP/1.1\r\nhost: 127.0.0.1:3567\r\nConnection: close\r\n\r\n" >&3 && cat <&3 | grep "Hello"'
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
# Cerbos
|
|
# --------------------------------------------------------------------------------
|
|
# Policy engine for application access control.
|
|
|
|
cerbos:
|
|
container_name: cerbos
|
|
image: ghcr.io/cerbos/cerbos:latest
|
|
command: ["server", "--config=/config.yaml"]
|
|
ports:
|
|
- "3592:3592"
|
|
- "3593:3593"
|
|
- "3594:3594"
|
|
volumes:
|
|
- ./cerbos.yaml:/config.yaml
|
|
- ./modules/identity/cerbos/policies:/data/policies/identity
|
|
- ./modules/workspace/cerbos/policies:/data/policies/workspace
|
|
networks:
|
|
- localdev
|
|
|
|
networks:
|
|
localdev:
|
|
driver: bridge
|