84 lines
2.8 KiB
YAML
84 lines
2.8 KiB
YAML
version: '3.3'
|
|
|
|
networks:
|
|
data-hub_net:
|
|
traefik_public:
|
|
external: true
|
|
|
|
volumes:
|
|
pgdata:
|
|
|
|
services:
|
|
data:
|
|
image: thedevilisdero/avic-data-connector:latest
|
|
environment:
|
|
DATABASE_PORT: ${DATABASE_PORT}
|
|
DATABASE_HOST: ${DATABASE_HOST}
|
|
DATABASE_USERNAME: ${DATABASE_USERNAME}
|
|
DATABASE_PASSWORD: ${DATABASE_PASSWORD}
|
|
DATABASE_DATABASE: ${DATABASE_DATABASE}
|
|
DATABASE_URL: ${DATABASE_URL}
|
|
DISPO_LIVE_BASE_URL: ${DISPO_LIVE_BASE_URL}
|
|
DISPO_LIVE_USERNAME: ${DISPO_LIVE_USERNAME}
|
|
DISPO_LIVE_PASSWORD: ${DISPO_LIVE_PASSWORD}
|
|
DYFLEXIS_V0_BASE_URL: ${DYFLEXIS_V0_BASE_URL}
|
|
DYFLEXIS_V2_BASE_URL: ${DYFLEXIS_V2_BASE_URL}
|
|
DYFLEXIS_V0_API_KEY: ${DYFLEXIS_V0_API_KEY}
|
|
DYFLEXIS_V2_API_KEY: ${DYFLEXIS_V2_API_KEY}
|
|
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT: "http://monitoring_alloy:4318/v1/traces"
|
|
OTEL_EXPORTER_OTLP_METRICS_ENDPOINT: "http://monitoring_alloy:4318/v1/metrics"
|
|
OTEL_SERVICE_NAME: "avicenna.data-connector"
|
|
networks:
|
|
- data-hub_net
|
|
- traefik_public
|
|
deploy:
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.swarm.network=traefik_public"
|
|
- "traefik.http.routers.avic-data-con.rule=(Host(`avicenna.genius.ceo`) && PathPrefix(`/api/`)) || (Host(`avicenna.genius.ceo`) && Path(`/graphql`))"
|
|
- "traefik.http.routers.avic-data-con.entrypoints=https"
|
|
- "traefik.http.routers.avic-data-con.tls=true"
|
|
- "traefik.http.routers.avic-data-con.tls.certresolver=main"
|
|
- "traefik.http.services.avic-data-con.loadbalancer.server.port=3000"
|
|
|
|
web:
|
|
image: thedevilisdero/avic-app-dashboard:latest
|
|
networks:
|
|
- traefik_public
|
|
environment:
|
|
- COLLECTOR_SECRET
|
|
- OTLP_ENDPOINT
|
|
- OTLP_SERVICE_NAME
|
|
- GRAPHQL_ENDPOINT
|
|
- GRAPHQL_WS_ENDPOINT
|
|
- MS_AUTHENTICATION_CLIENT_ID
|
|
- MS_AUTHENTICATION_AUTHORITY
|
|
- MS_AUTHENTICATION_REDIRECT_URI
|
|
- MS_AUTHENTICATION_POST_LOGOUT_REDIRECT_URI
|
|
deploy:
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.swarm.network=traefik_public"
|
|
- "traefik.http.routers.avicenna-web.rule=Host(`avicenna.genius.ceo`)"
|
|
- "traefik.http.routers.avicenna-web.entrypoints=https"
|
|
- "traefik.http.routers.avicenna-web.tls=true"
|
|
- "traefik.http.routers.avicenna-web.tls.certresolver=main"
|
|
- "traefik.http.services.avicenna-web.loadbalancer.server.port=80"
|
|
|
|
db:
|
|
image: postgres:16.3
|
|
environment:
|
|
POSTGRES_HOST: ${DATABASE_HOST}
|
|
POSTGRES_PASSWORD: ${DATABASE_PASSWORD}
|
|
POSTGRES_USER: ${DATABASE_USERNAME}
|
|
POSTGRES_DB: ${DATABASE_DATABASE}
|
|
PG_DATA: /var/lib/postgresql/data
|
|
volumes:
|
|
- pgdata:/var/lib/postgresql/data
|
|
networks:
|
|
- data-hub_net
|
|
|
|
cache:
|
|
image: valkey/valkey:8.1.2-alpine
|
|
networks:
|
|
- data-hub_net |