File size: 3,661 Bytes
3382f47
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
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

  websocket_server:
    <<: *agpt-services
    extends:
      file: ./docker-compose.platform.yml
      service: websocket_server

  scheduler_server:
    <<: *agpt-services
    extends:
      file: ./docker-compose.platform.yml
      service: scheduler_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
  studio:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: studio

  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

  rest:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: rest

  realtime:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: realtime

  storage:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: storage

  imgproxy:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: imgproxy

  meta:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: meta

  functions:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: functions

  analytics:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: analytics

  db:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: db
    ports:
      - ${POSTGRES_PORT}:5432 # We don't use Supavisor locally, so we expose the db directly.

  vector:
    <<: *supabase-services
    extends:
      file: ./db/docker/docker-compose.yml
      service: vector

  deps:
    <<: *supabase-services
    profiles:
      - local
    image: busybox
    command: /bin/true
    depends_on:
      - studio
      - kong
      - auth
      - meta
      - analytics
      - db
      - vector
      - redis
      - rabbitmq
      - clamav