95 lines
2.6 KiB
YAML
Executable File
95 lines
2.6 KiB
YAML
Executable File
services:
|
|
# 1. ADATBÁZIS (A Raktár)
|
|
postgres-db:
|
|
image: postgres:15 # Később ide jön a postgis/postgis:15-3.3-alpine a térképekhez
|
|
container_name: postgres-db
|
|
environment:
|
|
POSTGRES_USER: ${POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
POSTGRES_DB: ${POSTGRES_DB}
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
ports:
|
|
- "${POSTGRES_PORT}:${POSTGRES_PORT}"
|
|
networks:
|
|
- service_finder_net
|
|
restart: unless-stopped
|
|
|
|
# 2. BACKEND API (Az Agy)
|
|
service_finder_api:
|
|
build:
|
|
context: ./backend
|
|
dockerfile: Dockerfile
|
|
container_name: service_finder_api
|
|
volumes:
|
|
- ./backend:/app
|
|
# Parancs kiegészítése: meg kell engedni a proxy-tól jövő kéréseket
|
|
command: uvicorn app.main:app --host 0.0.0.0 --port 8000 --proxy-headers --forwarded-allow-ips="*"
|
|
ports:
|
|
- "8000:8000"
|
|
environment:
|
|
- PYTHONPATH=/app
|
|
- DATABASE_URL=postgresql+asyncpg://${APP_DB_USER}:${APP_DB_PASSWORD}@postgres-db:${APP_DB_PORT}/${APP_DB_NAME}
|
|
- SECRET_KEY=${SECRET_KEY}
|
|
# CORS beállítás: fontos, hogy a domainjeidről engedélyezd a kérést!
|
|
- ALLOWED_ORIGINS=https://dev.profibot.hu,https://app.profibot.hu
|
|
|
|
# ÚJ: MinIO és Redis beállítások a jövőbeli NAS-hoz (felkészülés)
|
|
- MINIO_ENDPOINT=minio:9000
|
|
- MINIO_ACCESS_KEY=${POSTGRES_USER} # Egyszerűség kedvéért most ugyanaz
|
|
- MINIO_SECRET_KEY=${POSTGRES_PASSWORD}
|
|
depends_on:
|
|
- postgres-db
|
|
- minio
|
|
- redis
|
|
networks:
|
|
- service_finder_net
|
|
|
|
# 3. PGADMIN (A Monitor)
|
|
pgadmin:
|
|
image: dpage/pgadmin4
|
|
container_name: pgadmin_ui
|
|
environment:
|
|
PGADMIN_DEFAULT_EMAIL: ${PGADMIN_EMAIL}
|
|
PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_PASSWORD}
|
|
ports:
|
|
- "5050:80"
|
|
depends_on:
|
|
- postgres-db
|
|
networks:
|
|
- service_finder_net
|
|
|
|
# 4. MINIO (NAS - Dokumentum tároló) - ÚJ!
|
|
minio:
|
|
image: minio/minio
|
|
container_name: service_finder_minio
|
|
command: server /data --console-address ":9001"
|
|
environment:
|
|
MINIO_ROOT_USER: ${POSTGRES_USER}
|
|
MINIO_ROOT_PASSWORD: ${POSTGRES_PASSWORD}
|
|
volumes:
|
|
- minio_data:/data
|
|
ports:
|
|
- "9000:9000" # API
|
|
- "9001:9001" # UI
|
|
networks:
|
|
- service_finder_net
|
|
|
|
# 5. REDIS (Gyorsítótár & Session) - ÚJ!
|
|
redis:
|
|
image: redis:alpine
|
|
container_name: service_finder_redis
|
|
volumes:
|
|
- redis_data:/data
|
|
networks:
|
|
- service_finder_net
|
|
|
|
networks:
|
|
service_finder_net:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
postgres_data:
|
|
minio_data: # Itt lesznek a fájlok (számlák, fotók)
|
|
redis_data:
|