-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
59 lines (54 loc) · 2.21 KB
/
docker-compose.yml
File metadata and controls
59 lines (54 loc) · 2.21 KB
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
services:
# ── API Gateway ──────────────────────────────────────────────────
# Punto di ingresso unico: valida JWT e inoltra le richieste
api-gateway:
build: ./api-gateaway
container_name: api-gateway
ports:
- "8080:8000" # Unica porta esposta al client
env_file:
- ./api-gateaway/.env
depends_on:
- auth-service
- inventory-service
- ai-service
networks:
- pantryly-net
restart: unless-stopped
# ── Auth Service ─────────────────────────────────────────────────
# Registrazione utenti + login + generazione JWT
auth-service:
build: ./services/auth-service
container_name: auth-service
env_file:
- ./services/auth-service/.env
networks:
- pantryly-net
restart: unless-stopped
# Nessuna porta esposta: accessibile solo dal gateway via rete interna
# ── Inventory Service ────────────────────────────────────────────
# CRUD prodotti (nome, barcode, scadenza)
inventory-service:
build: ./services/inventory-service
container_name: inventory-service
env_file:
- ./services/inventory-service/.env
networks:
- pantryly-net
restart: unless-stopped
# ── AI Service ───────────────────────────────────────────────────
# Generazione ricette, categorizzazione prodotti, chat AI
ai-service:
build: ./services/ai-service
container_name: ai-service
env_file:
- ./services/ai-service/.env
networks:
- pantryly-net
restart: unless-stopped
# ── Rete interna ────────────────────────────────────────────────────
# Tutti i container condividono questa rete; si raggiungono
# per nome servizio (es. http://auth-service:8000)
networks:
pantryly-net:
driver: bridge