# PowerShell Script to Install Easy!Appointments with Docker # Define folder where docker-compose.yml will be located $folder = "C:\Users\johnn\Desktop\Docker\easyappointments" $composeFile = "$folder\docker-compose.yml" # Create project directory if it doesn't exist if (-Not (Test-Path $folder)) { New-Item -ItemType Directory -Path $folder | Out-Null } # Create Docker Compose file with Easy!Appointments and PostgreSQL configuration @" version: '3.8' services: web: image: alexdoe/easyappointments:latest container_name: easyappointments_web ports: - "8080:80" environment: - DB_HOST=db - DB_PORT=5432 - DB_NAME=easyappointments - DB_USER=easyappointments_user - DB_PASSWORD=easyappointments_pass depends_on: - db restart: unless-stopped db: image: postgres:13 container_name: easyappointments_db environment: POSTGRES_DB: easyappointments POSTGRES_USER: easyappointments_user POSTGRES_PASSWORD: easyappointments_pass volumes: - easyappointments_db_data:/var/lib/postgresql/data restart: unless-stopped volumes: easyappointments_db_data: "@ | Set-Content -Path $composeFile # Navigate to the folder with the docker-compose.yml Set-Location $folder # Start Docker containers Write-Host "šŸš€ Starting Docker containers..." docker-compose up -d # Wait for DB and Easy!Appointments to initialize (30 seconds) Write-Host "ā³ Waiting for services to initialize..." Start-Sleep -Seconds 30 # Open Easy!Appointments in the browser Write-Host "🌐 Opening Easy!Appointments at http://localhost:8080" Start-Process "http://localhost:8080" Write-Host "`nāœ… Easy!Appointments is now running!"