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