#!/bin/bash # 🚀 Auto-generated by The AltStack # https://thealtstack.com echo "🔵 Starting AltStack Deployment..." # 1. Check/Install Docker if ! command -v docker &> /dev/null; then echo "📦 Docker not found. Installing..." curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh rm get-docker.sh echo "✅ Docker installed." else echo "✅ Docker is already installed." fi # 2. Setup Directory APP_DIR="keycloak-deploy" mkdir -p $APP_DIR cd $APP_DIR echo "📂 Created directory: $APP_DIR" # 3. Create docker-compose.yml echo "📄 Writing configuration..." cat << 'INNER_EOF' > docker-compose.yml # ------------------------------------------------------------------------- # 🚀 Created and distributed by The AltStack # 🌍 https://thealtstack.com # ------------------------------------------------------------------------- version: '3.8' services: keycloak: image: quay.io/keycloak/keycloak:latest container_name: keycloak restart: unless-stopped command: start-dev depends_on: - db ports: - "8080:8080" environment: - KEYCLOAK_ADMIN=admin - KEYCLOAK_ADMIN_PASSWORD=admin - KC_DB=postgres - KC_DB_URL=jdbc:postgresql://db:5432/keycloak - KC_DB_USERNAME=keycloak - KC_DB_PASSWORD=keycloak db: image: postgres:15-alpine container_name: keycloak-db restart: unless-stopped environment: - POSTGRES_DB=keycloak - POSTGRES_USER=keycloak - POSTGRES_PASSWORD=keycloak volumes: - keycloak_db_data:/var/lib/postgresql/data volumes: keycloak_db_data: INNER_EOF # 4. Start Services echo "🚀 Starting services..." docker compose up -d echo "" echo "✅ Deployment Complete!" echo "👉 Your keycloak stack is running."