Installation
Prerequisites
- Docker & Docker Compose v2.0+
- Git
- 4GB RAM minimum (8GB recommended)
- 10GB disk space
Quick Start
1. Clone Repository
bash
git clone https://github.com/auriti-web-design/prediction-odds.git
cd prediction-odds2. Configure Environment
bash
# Copy template
cp backend/.env.example backend/.env
# Edit with your API keys
nano backend/.env3. Start Services
bash
docker compose up -d4. Verify
bash
# Health check
curl http://localhost:8000/health
# Logs
docker compose logs -f backendServices and Ports
| Service | Port | URL |
|---|---|---|
| Frontend | 3002 | http://localhost:3002 |
| Backend API | 8000 | http://localhost:8000 |
| Swagger Docs | 8000 | http://localhost:8000/docs |
| PostgreSQL | 5432 | localhost:5432 |
| Redis | 6379 | localhost:6379 |
| pgAdmin | 5050 | http://localhost:5050 |
Useful Docker Commands
bash
# Start all services
docker compose up -d
# Stop all services
docker compose down
# Rebuild after changes
docker compose up -d --build
# Real-time logs
docker compose logs -f backend
# Access backend container
docker compose exec backend bash
# Access PostgreSQL
docker compose exec postgres psql -U postgres -d soccer_predictionsDatabase Migrations
bash
# Apply migrations
docker compose exec backend alembic upgrade head
# Create new migration
docker compose exec backend alembic revision --autogenerate -m "description"
# Rollback
docker compose exec backend alembic downgrade -1Troubleshooting
Container not starting
bash
# Check logs
docker compose logs backend
# Rebuild image
docker compose build --no-cache backend
docker compose up -dDatabase connection error
bash
# Verify postgres is healthy
docker compose ps
# Restart postgres
docker compose restart postgresPort already in use
bash
# Find process on port
lsof -i :8000
# Modify port in docker-compose.ymlNext Step
Configuration - Configure API keys and preferences