services: cleanslate-database: image: postgres:15 restart: always container_name: cleanslate-database ports: - '35000:5432' environment: POSTGRES_PASSWORD: 1234 volumes: - cleanslate-database:/var/lib/postgresql/data healthcheck: test: [ 'CMD-SHELL', 'pg_isready -U postgres'] interval: 10s timeout: 5s retries: 5 cleanslate-graphql-server: image: hasura/graphql-engine:latest.cli-migrations-v3 restart: always container_name: cleanslate-graphql-server ports: - '35001:8080' environment: HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET} HASURA_GRAPHQL_CORS_DOMAIN: https://${NEXT_PUBLIC_HASURA_DOMAIN} HASURA_GRAPHQL_DATABASE_URL: postgres://postgres:${POSTGRES_PASSWORD}@cleanslate-database:35000/postgres HASURA_GRAPHQL_DEV_MODE: false HASURA_GRAPHQL_ENABLE_CONSOLE: true HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log HASURA_GRAPHQL_JWT_SECRET: ${HASURA_GRAPHQL_JWT_SECRET} volumes: - cleanslate-migrations:/hasura-migrations - cleanslate-metadata:/hasura-metadata depends_on: cleanslate-database: condition: service_healthy extra_hosts: - 'host.docker.internal:host-gateway' cleanslate-authentication-server: image: ghcr.io/successible/cleanslate/authentication-server:latest build: context: . dockerfile: Dockerfile.server pull_policy: ${PULL_POLICY:-always} restart: always container_name: authentication-server ports: - '35002:3001' environment: HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET} JWT_SIGNING_SECRET: ${JWT_SIGNING_SECRET} NEXT_PUBLIC_USE_FIREBASE: ${NEXT_PUBLIC_USE_FIREBASE:-false} depends_on: - cleanslate-database - cleanslate-graphql-server extra_hosts: - 'host.docker.internal:host-gateway' cleanslate-client: image: ghcr.io/successible/cleanslate/client:latest build: context: . dockerfile: Dockerfile args: - NEXT_PUBLIC_FIREBASE_CONFIG=${NEXT_PUBLIC_FIREBASE_CONFIG:-{}} - NEXT_PUBLIC_LEGAL_LINK=${NEXT_PUBLIC_LEGAL_LINK:-no} - NEXT_PUBLIC_LOGIN_WITH_APPLE=${NEXT_PUBLIC_LOGIN_WITH_APPLE:-no} - NEXT_PUBLIC_LOGIN_WITH_FACEBOOK=${NEXT_PUBLIC_LOGIN_WITH_FACEBOOK:-no} - NEXT_PUBLIC_LOGIN_WITH_GITHUB=${NEXT_PUBLIC_LOGIN_WITH_GITHUB:-no} - NEXT_PUBLIC_LOGIN_WITH_GOOGLE=${NEXT_PUBLIC_LOGIN_WITH_GOOGLE:-no} - NEXT_PUBLIC_REACT_SENTRY_DSN=${NEXT_PUBLIC_REACT_SENTRY_DSN:-no} - NEXT_PUBLIC_USE_FIREBASE=${NEXT_PUBLIC_USE_FIREBASE:-false} - NEXT_PUBLIC_VERSION=${NEXT_PUBLIC_VERSION} pull_policy: ${PULL_POLICY:-always} restart: always container_name: client ports: - '2010:3000' depends_on: - cleanslate-database - cleanslate-graphql-server extra_hosts: - 'host.docker.internal:host-gateway' volumes: cleanslate-database: cleanslate-migrations: cleanslate-metadata: