Spaces:
Running
Running
# Define the path to the .env file | |
$envPath = ".\.env" | |
# Check if the .env file exists | |
if (Test-Path $envPath) { | |
# Read the .env file | |
$envContent = Get-Content $envPath | |
# Parse the environment variables | |
foreach ($line in $envContent) { | |
if ($line -match '^([^=]+)=(.*)$') { | |
$name = $matches[1] | |
$value = $matches[2] | |
[Environment]::SetEnvironmentVariable($name, $value, "Process") | |
Write-Host "Loaded environment variable: $name" | |
} | |
} | |
# Stop existing containers | |
Write-Host "Stopping existing containers..." | |
docker-compose down | |
# Rebuild the container | |
Write-Host "Rebuilding Docker containers..." | |
docker-compose build --no-cache app | |
# Start the services | |
Write-Host "Starting Docker services..." | |
docker-compose up -d | |
# Wait for services to be ready | |
Write-Host "Waiting for services to start up..." | |
Start-Sleep -Seconds 20 | |
# Run the Streamlit app | |
Write-Host "Starting Streamlit app..." | |
docker-compose exec -T app sh -c "cd /app/app && streamlit run main.py" | |
} | |
else { | |
Write-Error "The .env file was not found at $envPath" | |
} |