mirror of
https://github.com/graphql-hive/console
synced 2026-04-21 14:37:17 +00:00
175 lines
4.4 KiB
YAML
175 lines
4.4 KiB
YAML
version: '3.8'
|
|
services:
|
|
db:
|
|
image: postgres:13.4-alpine
|
|
networks:
|
|
- 'stack'
|
|
healthcheck:
|
|
test: ['CMD-SHELL', 'pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}']
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
environment:
|
|
POSTGRES_USER: postgres
|
|
POSTGRES_PASSWORD: postgres
|
|
POSTGRES_DB: registry
|
|
PGDATA: /var/lib/postgresql/data
|
|
volumes:
|
|
- ./volumes/postgresql/db:/var/lib/postgresql/data
|
|
ports:
|
|
- '5432:5432'
|
|
|
|
redis:
|
|
image: docker.io/bitnami/redis:7.0.7
|
|
networks:
|
|
- 'stack'
|
|
healthcheck:
|
|
test: ['CMD', 'redis-cli', 'ping']
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 10
|
|
start_period: 30s
|
|
environment:
|
|
- ALLOW_EMPTY_PASSWORD=yes
|
|
- REDIS_DISABLE_COMMANDS=FLUSHDB,FLUSHALL
|
|
ports:
|
|
- '6379:6379'
|
|
volumes:
|
|
- './volumes/redis/db:/bitnami/redis/data'
|
|
|
|
s3:
|
|
image: quay.io/minio/minio:RELEASE.2022-11-29T23-40-49Z
|
|
command: server /data --console-address ":9001"
|
|
ports:
|
|
- '9000:9000'
|
|
- '9001:9001'
|
|
networks:
|
|
- 'stack'
|
|
healthcheck:
|
|
test: ['CMD', 'curl', '-f', 'http://localhost:9000/minio/health/live']
|
|
interval: 30s
|
|
timeout: 20s
|
|
retries: 3
|
|
environment:
|
|
MINIO_ROOT_USER: minioadmin
|
|
MINIO_ROOT_PASSWORD: minioadmin
|
|
|
|
s3_provision_buckets:
|
|
image: quay.io/minio/mc:RELEASE.2022-11-17T21-20-39Z
|
|
depends_on:
|
|
s3:
|
|
condition: service_healthy
|
|
restart: 'no'
|
|
networks:
|
|
- 'stack'
|
|
entrypoint: >
|
|
/bin/sh -c " /usr/bin/mc alias set myminio http://s3:9000 minioadmin minioadmin; /usr/bin/mc
|
|
ls myminio/artifacts >/dev/null 2>&1 || /usr/bin/mc mb myminio/artifacts; exit 0"
|
|
|
|
clickhouse:
|
|
image: clickhouse/clickhouse-server:22.12-alpine
|
|
environment:
|
|
CLICKHOUSE_USER: test
|
|
CLICKHOUSE_PASSWORD: test
|
|
healthcheck:
|
|
test: ['CMD', 'wget', '--spider', '-q', 'localhost:8123/ping']
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
volumes:
|
|
- ./volumes/clickhouse/logs:/var/log/clickhouse-server
|
|
- ./volumes/clickhouse/db:/var/lib/clickhouse
|
|
- ./configs/clickhouse:/etc/clickhouse-server/conf.d
|
|
ports:
|
|
- '8123:8123'
|
|
networks:
|
|
- 'stack'
|
|
|
|
zookeeper:
|
|
image: confluentinc/cp-zookeeper:7.3.1
|
|
hostname: zookeeper
|
|
networks:
|
|
- 'stack'
|
|
ports:
|
|
- '2181:2181'
|
|
ulimits:
|
|
nofile:
|
|
soft: 20000
|
|
hard: 40000
|
|
healthcheck:
|
|
test: echo srvr | nc zookeeper 2181 || exit 1
|
|
retries: 20
|
|
interval: 10s
|
|
environment:
|
|
ZOOKEEPER_CLIENT_PORT: 2181
|
|
ZOOKEEPER_TICK_TIME: 2000
|
|
volumes:
|
|
- ./volumes/zookeeper/db:/var/lib/zookeeper/data
|
|
- ./volumes/zookeeper/log:/var/lib/zookeeper/log
|
|
|
|
broker:
|
|
image: confluentinc/cp-kafka:7.3.1
|
|
hostname: borker
|
|
depends_on:
|
|
zookeeper:
|
|
condition: service_started
|
|
networks:
|
|
- 'stack'
|
|
ports:
|
|
- '29092:29092'
|
|
- '9092:9092'
|
|
ulimits:
|
|
nofile:
|
|
soft: 20000
|
|
hard: 40000
|
|
healthcheck:
|
|
test:
|
|
[
|
|
'CMD',
|
|
'cub',
|
|
'kafka-ready',
|
|
'1',
|
|
'5',
|
|
'-b',
|
|
'127.0.0.1:9092',
|
|
'-c',
|
|
'/etc/kafka/kafka.properties',
|
|
]
|
|
interval: 15s
|
|
timeout: 10s
|
|
retries: 6
|
|
start_period: 15s
|
|
environment:
|
|
KAFKA_BROKER_ID: 1
|
|
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
|
KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true'
|
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
|
|
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://broker:29092,PLAINTEXT_HOST://localhost:9092
|
|
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
|
|
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
|
|
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
|
|
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
|
|
volumes:
|
|
- ./volumes/broker/db:/var/lib/kafka/data
|
|
|
|
supertokens:
|
|
image: registry.supertokens.io/supertokens/supertokens-postgresql:4.2
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
networks:
|
|
- 'stack'
|
|
ports:
|
|
- '3567:3567'
|
|
environment:
|
|
POSTGRESQL_USER: postgres
|
|
POSTGRESQL_PASSWORD: postgres
|
|
POSTGRESQL_DATABASE_NAME: registry
|
|
POSTGRESQL_TABLE_NAMES_PREFIX: 'supertokens'
|
|
POSTGRESQL_HOST: db
|
|
POSTGRESQL_PORT: 5432
|
|
API_KEYS: bubatzbieber6942096420
|
|
ACCESS_TOKEN_BLACKLISTING: 'true'
|
|
|
|
networks:
|
|
stack: {}
|