#!/bin/bash # Podman development environment startup script for FFR set -e echo "🚀 Starting FFR development environment with Podman..." # Check if .env exists if [ ! -f .env ]; then echo "📋 Creating .env file from .env.example..." cp .env.example .env fi # Check if podman-compose is available if ! command -v podman-compose &> /dev/null; then echo "❌ podman-compose not found." exit fi # Start services echo "🔧 Starting services..." podman-compose -f docker/dev/podman/docker-compose.yml up -d # Wait for database to be ready echo "⏳ Waiting for database to be ready..." sleep 10 # Install/update dependencies if needed echo "📦 Installing dependencies..." podman exec ffr-dev-app bash -c "cd /var/www/html/backend && composer install" podman exec ffr-dev-app bash -c "cd /var/www/html/frontend && npm install" # Run migrations and seeders echo "🗃️ Running database migrations..." podman exec ffr-dev-app bash -c "cd /var/www/html/backend && php artisan migrate --force" echo "🌱 Running database seeders..." podman exec ffr-dev-app bash -c "cd /var/www/html/backend && php artisan db:seed --force" # Wait for container services to be fully ready echo "⏳ Waiting for container services to initialize..." sleep 5 # Start React dev server if not already running echo "🚀 Starting React dev server..." podman exec -d ffr-dev-app bash -c "cd /var/www/html/frontend && npm run dev -- --host 0.0.0.0 --port 5173 > /dev/null 2>&1 &" sleep 5 # Verify Vite is running if podman exec ffr-dev-app bash -c "curl -s http://localhost:5173 > /dev/null 2>&1"; then echo "✅ Vite dev server is running" else echo "⚠️ Vite dev server may not have started properly" fi echo "✅ Development environment is ready!" echo "🌐 Application: http://localhost:8000" echo "🔥 Vite dev server: http://localhost:5173" echo "💾 Database: localhost:3307" echo "🔴 Redis: localhost:6380" echo "" echo "📋 Useful commands:" echo " Stop: podman-compose -f docker/dev/podman/docker-compose.yml down" echo " Logs: podman-compose -f docker/dev/podman/docker-compose.yml logs -f" echo " Exec: podman exec -it ffr-dev-app bash" echo " Tests: podman exec ffr-dev-app php artisan test"