first (part 1: root files)
Deploy Iddaai Backend / build-and-deploy (push) Failing after 4s

This commit is contained in:
2026-04-16 15:09:10 +03:00
parent b4173c10bb
commit 7814e0bc6b
38 changed files with 18494 additions and 0 deletions
+112
View File
@@ -0,0 +1,112 @@
version: '3.8'
services:
# Application
app:
build:
context: .
dockerfile: Dockerfile
target: production
container_name: suggestbet-app
restart: unless-stopped
ports:
- '${PORT:-3000}:3000'
environment:
- NODE_ENV=production
- DATABASE_URL=postgresql://${POSTGRES_USER:-suggestbet}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB:-boilerplate_db}?schema=public
- REDIS_HOST=redis
- REDIS_PORT=6379
- REDIS_PASSWORD=${REDIS_PASSWORD}
- AI_ENGINE_URL=http://ai-engine:8000
env_file:
- .env
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
command: node dist/main.js
networks:
- suggestbet-network
# PostgreSQL (Switched from postgresml due to disk space issues on host)
postgres:
image: postgres:17-alpine
container_name: suggestbet-postgres
restart: unless-stopped
ports:
- '127.0.0.1:15432:5432'
environment:
POSTGRES_USER: ${POSTGRES_USER:-suggestbet}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-SuGGesT2026SecuRe}
POSTGRES_DB: ${POSTGRES_DB:-boilerplate_db}
volumes:
- pgml_data:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U suggestbet -d boilerplate_db']
interval: 10s
timeout: 10s
retries: 10
start_period: 30s
networks:
- suggestbet-network
# Redis
redis:
image: redis:7-alpine
container_name: suggestbet-redis
restart: unless-stopped
ports:
- '127.0.0.1:6379:6379' # Only localhost can access
command: redis-server --requirepass ${REDIS_PASSWORD}
volumes:
- ./data/redis:/data
healthcheck:
test: ['CMD', 'redis-cli', 'ping']
interval: 5s
timeout: 5s
retries: 5
networks:
- suggestbet-network
# Adminer (Database UI)
adminer:
image: adminer:latest
container_name: suggestbet-adminer
profiles:
- dev
restart: unless-stopped
ports:
- '8080:8080'
depends_on:
- postgres
networks:
- suggestbet-network
# AI Engine (Python FastAPI)
ai-engine:
build:
context: ./ai-engine
dockerfile: Dockerfile
container_name: suggestbet-ai-engine
restart: unless-stopped
ports:
- '8002:8000'
environment:
- DATABASE_URL=postgresql://${POSTGRES_USER:-suggestbet}:${POSTGRES_PASSWORD:-SuGGesT2026SecuRe}@postgres:5432/${POSTGRES_DB:-boilerplate_db}?schema=public
volumes:
- ./ai-engine:/app
depends_on:
postgres:
condition: service_healthy
command: uvicorn main:app --host 0.0.0.0 --port 8000 --reload
networks:
- suggestbet-network
networks:
suggestbet-network:
driver: bridge
volumes:
pgml_data:
driver: local