diff --git a/docs/devops/single_azure_vm/docker/setup.sh b/docs/devops/single_azure_vm/docker/setup.sh index 3994f310..a8432b79 100755 --- a/docs/devops/single_azure_vm/docker/setup.sh +++ b/docs/devops/single_azure_vm/docker/setup.sh @@ -3,6 +3,7 @@ # ByteLyst Single-VM Bootstrap Script # ═══════════════════════════════════════════════════════════════════════ # Deploys the ENTIRE ByteLyst ecosystem on a **raw** Ubuntu Azure VM. +# 31 services: 6 infra + 3 platform + 2 dashboards + 10 backends + 9 webs + 1 standalone # Installs ALL dependencies from scratch — nothing pre-installed required. # # What gets installed: @@ -13,7 +14,7 @@ # - Ollama (local LLM inference for LocalMemGPT on :11434) # - All 12 ByteLyst repos (cloned from GitHub) # - All @bytelyst/* packages (built + published to Gitea) -# - Full 30-service ecosystem (via docker-compose.ecosystem.yml) +# - Full 31-service ecosystem (via docker-compose.ecosystem.yml) # # Usage: sudo ./setup.sh [OPTIONS] # @@ -32,8 +33,8 @@ # 4 Build all @bytelyst/* packages # 5 Publish packages to Gitea npm registry # 6 Generate .env.ecosystem config -# 7 Build + deploy 30 Docker services (per-service, with fallback) -# 8 Health check (30 endpoints) +# 7 Build + deploy 31 Docker services (per-service, with fallback) +# 8 Health check (31 endpoints) # # Examples: # sudo ./setup.sh # Fresh install (all 8 phases) @@ -529,6 +530,9 @@ phase3_clone() { fi done + # Restore CWD after per-repo cd loop + cd "$INSTALL_DIR" + ok "Phase 3 complete. All repos in ${INSTALL_DIR}/ and pushed to Gitea." } @@ -696,6 +700,12 @@ FIELD_ENCRYPT_KEY_PROVIDER=memory # Product Identity DEFAULT_PRODUCT_ID=lysnrai +# Runtime environment +NODE_ENV=production + +# CORS (allow all origins for dev/test VM — restrict in production) +CORS_ORIGIN=* + # Webhooks (disabled) WEBHOOK_INVITATION_REDEEMED_URL= WEBHOOK_REFERRAL_STATUS_URL= @@ -714,7 +724,7 @@ ENV # ═══════════════════════════════════════════════════════════════════════ # PHASE 7: Deploy Ecosystem via Docker Compose # ═══════════════════════════════════════════════════════════════════════ -# All 30 compose services, grouped for ordered build + reporting. +# All 31 compose services, grouped for ordered build + reporting. INFRA_SERVICES=(cosmos-emulator azurite mailpit loki grafana gateway) PLATFORM_SERVICES=(platform-service extraction-service mcp-server) DASHBOARD_SERVICES=(admin-web tracker-web) @@ -726,6 +736,7 @@ BACKEND_SERVICES=( WEB_SERVICES=( lysnrai-dashboard chronomind-web jarvisjr-web flowmonk-web notelett-web mindlyst-web nomgap-web actiontrail-web localmemgpt-web + llmlab-dashboard ) setup_compose_env() { @@ -762,7 +773,7 @@ build_one_service() { } phase7_deploy() { - log "Phase 7: Deploying ecosystem (per-service build + fallback)..." + log "Phase 7: Deploying 31-service ecosystem (per-service build + fallback)..." # Free RAM: stop Ollama during Docker builds (Phase 1 will restart it, or we do at end) if systemctl is-active --quiet ollama 2>/dev/null; then @@ -943,6 +954,7 @@ check "mindlyst-web" "http://localhost:3050" check "nomgap-web" "http://localhost:3055" check "actiontrail-web" "http://localhost:3060" check "localmemgpt-web" "http://localhost:3070" +check "llmlab-dashboard" "http://localhost:3075" echo "" HEALTH chmod +x "${INSTALL_DIR}/check-health.sh" @@ -1049,7 +1061,7 @@ main() { echo "" echo "╔═══════════════════════════════════════════════════════════════╗" echo "║ ByteLyst Single-VM Deployment (raw Ubuntu) ║" - echo "║ 30 services · 10 products · Ollama · Gitea · 1 VM ║" + echo "║ 31 services · 11 products · Ollama · Gitea · 1 VM ║" echo "╚═══════════════════════════════════════════════════════════════╝" echo "" log "Log file: ${INSTALL_DIR}/setup.log"