Files
twenty/infra/dev/docker-compose.yml
Charles Bochet ae7bad65ca Setup GraphQL Code Generator (#74)
* chore: add types of schema

* Ease codegen use on FE

* chore: ignore prettier in generated files

* lint: generated files

* feature: strongly type filter of query

* chore: ignore generated files in prettier

* chore: eslint ignore generated files

---------

Co-authored-by: Sammy Teillet <sammy.teillet@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-25 17:25:30 +02:00

101 lines
3.1 KiB
YAML

version: "3.9"
services:
twenty-front:
build:
context: ../..
dockerfile: ./infra/dev/front/Dockerfile
ports:
- "3001:3001"
- "6006:6006"
environment:
REACT_APP_API_URL: ${FRONT_REACT_APP_API_URL}
REACT_APP_AUTH_URL: ${FRONT_REACT_APP_AUTH_URL}
HASURA_GRAPHQL_ENDPOINT: ${FRONT_HASURA_GRAPHQL_ENDPOINT}
HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET}
volumes:
- ../../front:/app/front
- twenty_node_modules_front:/app/front/node_modules
depends_on:
- postgres
twenty-hasura:
build: ./hasura
ports:
- "8080:8080"
- "9695:9695"
- "9693:9693"
volumes:
- ../../hasura:/hasura
- /hasura/entrypoints
depends_on:
- "postgres"
restart: always
environment:
HASURA_GRAPHQL_METADATA_DATABASE_URL: ${HASURA_GRAPHQL_METADATA_DATABASE_URL}
HASURA_GRAPHQL_PG_DATABASE_URL: ${HASURA_GRAPHQL_PG_DATABASE_URL}
HASURA_GRAPHQL_ENABLE_CONSOLE: "false"
HASURA_GRAPHQL_DEV_MODE: "true"
HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log
HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET}
HASURA_GRAPHQL_JWT_SECRET: ${HASURA_GRAPHQL_JWT_SECRET}
HASURA_EVENT_HANDLER_URL: ${HASURA_EVENT_HANDLER_URL}
hasura-auth:
image: nhost/hasura-auth:0.19.1
ports:
- "4000:4000"
environment:
HASURA_GRAPHQL_JWT_SECRET: ${HASURA_GRAPHQL_JWT_SECRET}
HASURA_GRAPHQL_DATABASE_URL: ${HASURA_GRAPHQL_PG_DATABASE_URL}
HASURA_GRAPHQL_GRAPHQL_URL: ${HASURA_AUTH_GRAPHQL_URL}
HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET}
AUTH_JWT_CUSTOM_CLAIMS: '{"workspace-id":"workspace_member.workspace_id"}'
npm_package_version: '0'
AUTH_SMTP_HOST: mailhog
AUTH_SMTP_PORT: 1025
AUTH_SERVER_URL: ${HASURA_AUTH_SERVER_URL}
AUTH_CLIENT_URL: ${HASURA_AUTH_CLIENT_URL}
AUTH_PROVIDER_GOOGLE_ENABLED: true
AUTH_PROVIDER_GOOGLE_CLIENT_ID: ${HASURA_AUTH_PROVIDER_GOOGLE_CLIENT_ID}
AUTH_PROVIDER_GOOGLE_CLIENT_SECRET: ${HASURA_AUTH_PROVIDER_GOOGLE_CLIENT_SECRET}
AUTH_PROVIDER_GOOGLE_SCOPE: email,profile
depends_on:
- "twenty-hasura"
- "postgres"
- "mailhog"
mailhog:
image: jcalonso/mailhog
environment:
SMTP_HOST: mailhog
SMTP_PORT: 1025
SMTP_PASS: smtp-secret
SMTP_USER: smtp-user
SMTP_SECURE: "false"
SMTP_SENDER: auth@localhost
ports:
- "1025:1025"
- "8025:8025"
twenty-server:
build:
context: ../..
dockerfile: ./infra/dev/server/Dockerfile
ports:
- "3000:3000"
volumes:
- ../../server:/app/server
- twenty_node_modules_server:/app/server/node_modules
environment:
HASURA_EVENT_HANDLER_SECRET_HEADER: ${SERVER_HASURA_EVENT_HANDLER_SECRET_HEADER}
SERVER_DATABASE_URL: ${SERVER_DATABASE_URL}
depends_on:
- postgres
postgres:
build: ./postgres
volumes:
- db_data:/var/lib/postgresql/data
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
ports:
- "5432:5432"
volumes:
db_data:
twenty_node_modules_front:
twenty_node_modules_server: