Files
AutoGPT/autogpt_platform/docker-compose.yml
2026-02-10 22:55:47 +01:00

186 lines
3.6 KiB
YAML

networks:
app-network:
name: app-network
shared-network:
name: shared-network
volumes:
supabase-config:
clamav-data:
x-agpt-services:
&agpt-services
networks:
- app-network
- shared-network
x-supabase-services:
&supabase-services
networks:
- app-network
- shared-network
services:
# AGPT services
migrate:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: migrate
redis:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: redis
rabbitmq:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: rabbitmq
rest_server:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: rest_server
executor:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: executor
copilot_executor:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: copilot_executor
websocket_server:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: websocket_server
database_manager:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: database_manager
scheduler_server:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: scheduler_server
notification_server:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: notification_server
clamav:
<<: *agpt-services
image: clamav/clamav-debian:latest
ports:
- "3310:3310"
volumes:
- clamav-data:/var/lib/clamav
environment:
- CLAMAV_NO_FRESHCLAMD=false
- CLAMD_CONF_StreamMaxLength=50M
- CLAMD_CONF_MaxFileSize=100M
- CLAMD_CONF_MaxScanSize=100M
- CLAMD_CONF_MaxThreads=12
- CLAMD_CONF_ReadTimeout=300
healthcheck:
test: ["CMD-SHELL", "clamdscan --version || exit 1"]
interval: 30s
timeout: 10s
retries: 3
frontend:
<<: *agpt-services
extends:
file: ./docker-compose.platform.yml
service: frontend
# Supabase services (minimal: auth + db + kong)
kong:
<<: *supabase-services
extends:
file: ./db/docker/docker-compose.yml
service: kong
auth:
<<: *supabase-services
extends:
file: ./db/docker/docker-compose.yml
service: auth
environment:
GOTRUE_MAILER_AUTOCONFIRM: true
db:
<<: *supabase-services
extends:
file: ./db/docker/docker-compose.yml
service: db
ports:
- 5432:5432 # We don't use Supavisor locally, so we expose the db directly.
# Studio and its dependencies for local development only
meta:
<<: *supabase-services
profiles:
- local
extends:
file: ./db/docker/docker-compose.yml
service: meta
studio:
<<: *supabase-services
profiles:
- local
extends:
file: ./db/docker/docker-compose.yml
service: studio
depends_on:
meta:
condition: service_healthy
# environment:
# NEXT_PUBLIC_ENABLE_LOGS: false # Disable analytics/logging features
deps:
<<: *supabase-services
profiles:
- local
image: busybox
command: /bin/true
depends_on:
- kong
- auth
- db
- studio
- redis
- rabbitmq
- clamav
- migrate
deps_backend:
<<: *agpt-services
profiles:
- local
image: busybox
command: /bin/true
depends_on:
- deps
- rest_server
- executor
- copilot_executor
- websocket_server
- database_manager