graphql-engine/docker-compose.yml
Chris Done 15071a3bc9 Add SQL Server & Citus to hspec test suite harness and a BasicFields test for each
Relates to https://github.com/hasura/graphql-engine/issues/7755

This includes:

1. SQL Server
2. Citus

And removes the persistent-based testing in favor of duplicating the schema setup, data insertion and teardown.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3030
Co-authored-by: Abby Sassel <3883855+sassela@users.noreply.github.com>
GitOrigin-RevId: ab03e68436d2ae07a9ddeb5a499ff41e48d0e2d6
2021-12-30 11:01:43 +00:00

73 lines
2.0 KiB
YAML

# This file starts up the necessary database services to test
# graphql-engine.
#
# Run the following to get started:
#
# docker-compose up -d
#
# That will start up services in the background. To take them down,
# you have to run
#
# docker-compose down
#
# If you changed DB init scripts, then you should also run:
#
# docker-compose down --volumes
#
# That'll delete the volumes. Otherwise e.g. PostgreSQL will skip
# initializing if a DB already exists.
#
# If you omit -d, it'll run them all in the foreground, then you can
# stop them with your usual control-C terminal command.
#
# Facts:
#
# * The SERVICE PORTS numbering start at 65001, 65002, etc. to avoid
# bother existing instances of databases.
#
# * The login credentials are, where possible, all "hasura" to avoid
# unnecessary mental overhead.
version: "3.3"
services:
mariadb:
image: mariadb:10.6.4-focal@sha256:c014ba1efc5dbd711d0520c7762d57807f35549de3414eb31e942a420c8a2ed2
ports:
- "65001:3306"
environment:
MARIADB_USER: "hasura"
MARIADB_PASSWORD: "hasura"
MARIADB_DATABASE: "hasura"
MARIADB_ALLOW_EMPTY_ROOT_PASSWORD: "true"
postgres:
image: postgres:14-alpine@sha256:1cf551de75fd602ebc94ccda93305a4e411f941bf9465f59d850bdcfd474ca52
ports:
- "65002:5432"
environment:
POSTGRES_USER: "hasura"
POSTGRES_PASSWORD: "hasura"
POSTGRES_DB: "hasura"
volumes:
- ${PWD}/docker-compose/postgres:/docker-entrypoint-initdb.d
sqlserver:
build: ./docker-compose/sqlserver/
ports:
- "65003:1433"
environment:
ACCEPT_EULA: "Y"
SA_PASSWORD: "DockerComposePassword!"
citus:
image: citusdata/citus:10.1@sha256:7e497e5ca18d7f2ae2a66c1d5d676b548e9221b7e6294adfb03006adad85502c
ports:
- "65004:5432"
environment:
POSTGRES_USER: "hasura"
POSTGRES_PASSWORD: "hasura"
POSTGRES_DB: "hasura"
volumes:
- ${PWD}/docker-compose/postgres/init.sh:/docker-entrypoint-initdb.d/init-hasura.sh