platform/tests/docker-compose.yaml
Alexander Onnikov 6c5a6aae27
Some checks are pending
CI / uitest (push) Waiting to run
CI / uitest-pg (push) Waiting to run
CI / uitest-qms (push) Waiting to run
CI / docker-build (push) Blocked by required conditions
CI / dist-build (push) Blocked by required conditions
CI / build (push) Waiting to run
CI / svelte-check (push) Blocked by required conditions
CI / formatting (push) Blocked by required conditions
CI / test (push) Blocked by required conditions
CI / uitest-workspaces (push) Waiting to run
Use datalake in tests and dev (#8826)
Signed-off-by: Alexander Onnikov <Alexander.Onnikov@xored.com>
2025-05-05 10:44:03 +07:00

297 lines
8.1 KiB
YAML

services:
stream:
image: 'hardcoreeng/stream'
pull_policy: always
environment:
- STREAM_ENDPOINT_URL=s3://localhost:9002
- STREAM_INSECURE=true
- STREAM_SERVER_SECRET=secret
- AWS_ACCESS_KEY_ID=minioadmin
- AWS_SECRET_ACCESS_KEY=minioadmin
ports:
- 1081:1080
restart: unless-stopped
mongodb:
image: 'mongo:7-jammy'
command: mongod --port 27018
healthcheck:
test: echo "try { db.currentOp().ok } catch (err) { }" | mongosh --port 27018 --quiet
interval: 5s
timeout: 30s
start_period: 0s
start_interval: 1s
retries: 30
environment:
- PUID=1000
- PGID=1000
ports:
- 27018:27018
restart: unless-stopped
cockroach:
image: cockroachdb/cockroach:v24.1.2
ports:
- '26258:26257'
- '18089:8080'
command: start-single-node --insecure
restart: unless-stopped
redpanda:
image: docker.redpanda.com/redpandadata/redpanda:v24.3.6
command:
- redpanda
- start
- --kafka-addr internal://0.0.0.0:9093,external://0.0.0.0:19093
- --advertise-kafka-addr internal://redpanda:9093,external://localhost:19093
- --pandaproxy-addr internal://0.0.0.0:8084,external://0.0.0.0:18084
- --advertise-pandaproxy-addr internal://redpanda:8084,external://localhost:18084
- --schema-registry-addr internal://0.0.0.0:8083,external://0.0.0.0:18083
- --rpc-addr redpanda:33145
- --advertise-rpc-addr redpanda:33145
- --mode dev-container
- --smp 1
- --default-log-level=info
ports:
- 18083:18083
- 18084:18084
- 19093:19093
- 19645:9644
healthcheck:
test: ['CMD', 'rpk', 'cluster', 'info', '-X', 'user=superuser', '-X', 'pass=secretpassword']
interval: 10s
timeout: 5s
retries: 10
redpanda_console:
image: docker.redpanda.com/redpandadata/console:v2.8.3
entrypoint: /bin/sh
command: -c 'echo "$$CONSOLE_CONFIG_FILE" > /tmp/config.yml; /app/console'
environment:
CONFIG_FILEPATH: /tmp/config.yml
CONSOLE_CONFIG_FILE: |
kafka:
brokers: ["redpanda:9093"]
schemaRegistry:
enabled: true
urls: ["http://redpanda:8083"]
redpanda:
adminApi:
enabled: true
urls: ["http://redpanda:9644"]
ports:
- 8001:8080
depends_on:
- redpanda
minio:
image: 'minio/minio'
command: server /data --address ":9000" --console-address ":9001"
expose:
- 9000
- 9001
ports:
- 9002:9000
- 9003:9001
healthcheck:
test: ["CMD", "mc", "ready", "local"]
interval: 5s
retries: 10
elastic:
image: 'elasticsearch:7.14.2'
expose:
- 9200
ports:
- 9201:9200
environment:
- ELASTICSEARCH_PORT_NUMBER=9200
- BITNAMI_DEBUG=true
- discovery.type=single-node
- ES_JAVA_OPTS=-Xms1024m -Xmx1024m
healthcheck:
interval: 20s
retries: 10
test: curl -s http://localhost:9200/_cluster/health | grep -vq '"status":"red"'
account:
image: hardcoreeng/account
pull_policy: never
links:
- mongodb
- minio
- cockroach
ports:
- 3003:3003
volumes:
- ./branding-test.json:/var/cfg/branding.json
environment:
- ACCOUNT_PORT=3003
- QUEUE_CONFIG=${QUEUE_CONFIG}
- SERVER_SECRET=secret
- ADMIN_EMAILS=admin,${PLATFORM_ADMIN_EMAILS}
- WORKSPACE_LIMIT_PER_USER=100
- DB_URL=${MONGO_URL}
- REGION_INFO=|America
- TRANSACTOR_URL=ws://transactor:3334;ws://localhost:3334
- STORAGE_CONFIG=${STORAGE_CONFIG}
- BRANDING_PATH=/var/cfg/branding.json
- STATS_URL=http://stats:4901
workspace:
image: hardcoreeng/workspace
links:
- mongodb
- cockroach
- minio
- redpanda
volumes:
- ./branding-test.json:/var/cfg/branding.json
environment:
- SERVER_SECRET=secret
- DB_URL=mongodb://mongodb:27018
- TRANSACTOR_URL=ws://transactor:3334;ws://localhost:3334
- QUEUE_CONFIG=${QUEUE_CONFIG}
- STORAGE_CONFIG=${STORAGE_CONFIG}
- REGION=
- ACCOUNTS_URL=http://account:3003
- BRANDING_PATH=/var/cfg/branding.json
- STATS_URL=http://stats:4901
restart: unless-stopped
front:
image: hardcoreeng/front
pull_policy: never
links:
- account
- mongodb
- minio
- elastic
- collaborator
- stats
- transactor
ports:
- 8083:8083
volumes:
- ./branding-test.json:/app/dist/branding-test.json
environment:
- SERVER_PORT=8083
- SERVER_SECRET=secret
- ACCOUNTS_URL_INTERNAL=http://account:3003
- ACCOUNTS_URL=http://localhost:3003
- FILES_URL=http://localhost:4031/blob/:workspace/:blobId/:filename
- UPLOAD_URL=http://localhost:4031/upload/form-data/:workspace
- PREVIEW_CONFIG=http://localhost:4031/image/fit=cover,width=:width,height=:height,dpr=:dpr/:workspace/:blobId
- ELASTIC_URL=http://elastic:9200
- GMAIL_URL=http://localhost:8088
- CALENDAR_URL=http://localhost:8095
- REKONI_URL=http://rekoni:4007
- TELEGRAM_URL=http://localhost:8086
- COLLABORATOR_URL=ws://localhost:3079
- STORAGE_CONFIG=${STORAGE_CONFIG}
- BRANDING_URL=http://localhost:8083/branding-test.json
- STATS_URL=http://stats:4901
- STATS_API=http://localhost:4901
transactor:
image: hardcoreeng/transactor
pull_policy: never
links:
- mongodb
- elastic
- minio
- rekoni
- cockroach
- account
- stats
- redpanda
ports:
- 3334:3334
volumes:
- ./branding-test.json:/var/cfg/branding.json
environment:
- QUEUE_CONFIG=${QUEUE_CONFIG}
- REGION=
- SERVER_PORT=3334
- SERVER_SECRET=secret
- DB_URL=mongodb://mongodb:27018
- METRICS_CONSOLE=false
- METRICS_FILE=metrics.txt
- STORAGE_CONFIG=${STORAGE_CONFIG}
- FRONT_URL=http://localhost:8083
- ACCOUNTS_URL=http://account:3003
- COLLABORATOR_URL=http://collaborator:3079
- LAST_NAME_FIRST=true
- BRANDING_PATH=/var/cfg/branding.json
- FULLTEXT_URL=http://fulltext:4710
- STATS_URL=http://stats:4901
- ENABLE_COMPRESSION=true
- RATE_LIMIT_MAX=25000
- RATE_LIMIT_WINDOW=1000
collaborator:
image: hardcoreeng/collaborator
links:
- mongodb
- minio
- transactor
ports:
- 3079:3079
environment:
- COLLABORATOR_PORT=3079
- SECRET=secret
- ACCOUNTS_URL=http://account:3003
- STORAGE_CONFIG=${STORAGE_CONFIG}
- FULLTEXT_URL=http://fulltext:4710
- STATS_URL=http://stats:4901
restart: unless-stopped
rekoni:
image: hardcoreeng/rekoni-service
restart: on-failure
ports:
- 4007:4004
environment:
- STATS_URL=http://stats:4901
fulltext:
image: hardcoreeng/fulltext
restart: unless-stopped
links:
- elastic
- mongodb
- cockroach
- rekoni
- redpanda
ports:
- 4710:4710
environment:
- PORT=4710
- SERVER_SECRET=secret
- DB_URL=mongodb://mongodb:27018
- FULLTEXT_DB_URL=http://elastic:9200
- QUEUE_CONFIG=${QUEUE_CONFIG}
- ELASTIC_INDEX_NAME=local_storage_index
- STORAGE_CONFIG=${STORAGE_CONFIG}
- REKONI_URL=http://rekoni:4007
- ACCOUNTS_URL=http://account:3003
- STATS_URL=http://stats:4901
datalake:
image: hardcoreeng/datalake
depends_on:
minio:
condition: service_healthy
cockroach:
condition: service_started
stats:
condition: service_started
account:
condition: service_started
ports:
- 4031:4031
environment:
- PORT=4031
- SECRET=secret
- ACCOUNTS_URL=http://account:3003
- STATS_URL=http://stats:4901
- STREAM_URL=http://localhost:1081/recording
- DB_URL=${DB_PG_URL}
- BUCKETS=blobs,eu|http://minio:9000?accessKey=minioadmin&secretKey=minioadmin
restart: unless-stopped
stats:
image: hardcoreeng/stats
ports:
- 4901:4901
environment:
- PORT=4901
- SERVER_SECRET=secret
restart: unless-stopped