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
+141
View File
@@ -0,0 +1,141 @@
services:
# Application
app:
build:
context: .
dockerfile: Dockerfile
target: builder
container_name: suggestbet-app-local
restart: unless-stopped
ports:
- '3005:3000'
environment:
- PORT=3000
- NODE_ENV=development
- DATABASE_URL=postgresql://suggestbet:SuGGesT2026SecuRe@postgres:5432/boilerplate_db?schema=public
- REDIS_HOST=redis
- REDIS_PORT=6379
- REDIS_PASSWORD=RedisSecure2026
- REDIS_ENABLED=true
- JWT_SECRET=9bfa42fbdc6031da6d7c0bd30e9f5b6378a071613d0c02acf95eb576249c3a25
- JWT_ACCESS_EXPIRATION=15m
- JWT_REFRESH_EXPIRATION=7d
- DEFAULT_LANGUAGE=en
- FALLBACK_LANGUAGE=en
- AI_ENGINE_URL=http://ai-engine:8000
volumes:
- .:/app
- /app/node_modules
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
command: /bin/sh -c "apk add --no-cache openssl && npx prisma generate && node dist/src/main.js"
networks:
- suggestbet-network
# Frontend (Next.js)
frontend:
build:
context: ../GitHub/Suggest-Bet-FE
dockerfile: Dockerfile
args:
- NEXT_PUBLIC_API_URL=http://localhost:3005/api
container_name: suggestbet-frontend-local
restart: unless-stopped
ports:
- '3001:3000'
environment:
- NEXT_PUBLIC_API_URL=http://localhost:3005/api
depends_on:
- app
networks:
- suggestbet-network
# PostgreSQL Database
postgres:
image: postgres:16-alpine
container_name: suggestbet-postgres-local
restart: unless-stopped
ports:
- '15432:5432' # Host port 15432 mapped to container standard port 5432
environment:
POSTGRES_USER: suggestbet
POSTGRES_PASSWORD: SuGGesT2026SecuRe
POSTGRES_DB: boilerplate_db
volumes:
- ./data/postgres-local:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U suggestbet -d boilerplate_db']
interval: 5s
timeout: 5s
retries: 5
networks:
- suggestbet-network
# Redis
redis:
image: redis:7-alpine
container_name: suggestbet-redis-local
restart: unless-stopped
ports:
- '6379:6379'
command: redis-server --requirepass RedisSecure2026
volumes:
- ./data/redis-local:/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-local
restart: unless-stopped
ports:
- '8080:8080'
depends_on:
- postgres
networks:
- suggestbet-network
# Redis Insight (Redis GUI)
redis-insight:
image: redis/redisinsight:latest
container_name: suggestbet-redis-insight-local
restart: unless-stopped
ports:
- '5540:5540'
depends_on:
- redis
networks:
- suggestbet-network
# AI Engine (Python FastAPI)
ai-engine:
build:
context: ./ai-engine
dockerfile: Dockerfile
container_name: suggestbet-ai-engine-local
restart: unless-stopped
ports:
- '8000:8000'
environment:
- DATABASE_URL=postgresql://suggestbet:SuGGesT2026SecuRe@postgres:5432/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