{"id":46834574,"url":"https://github.com/azullus/bc-docker-manager","last_synced_at":"2026-03-10T11:15:33.282Z","repository":{"id":332493063,"uuid":"1126340410","full_name":"azullus/bc-docker-manager","owner":"azullus","description":"Electron + TypeScript desktop app for Dynamics 365 Business Central Docker containers with Claude AI troubleshooting, one-click deployment, and PowerShell integration.","archived":false,"fork":false,"pushed_at":"2026-02-24T15:28:31.000Z","size":942,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-24T20:14:20.198Z","etag":null,"topics":["ai","ai-powered","anthropic","backup","business-central","claude","claude-api","container-management","desktop-app","devops","docker","electron","nextjs","powershell","react","tailwindcss","typescript"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/azullus.png","metadata":{"files":{"readme":"README-Desktop.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-01T17:41:58.000Z","updated_at":"2026-02-24T15:32:25.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/azullus/bc-docker-manager","commit_stats":null,"previous_names":["azullus/bc-docker-manager"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/azullus/bc-docker-manager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azullus%2Fbc-docker-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azullus%2Fbc-docker-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azullus%2Fbc-docker-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azullus%2Fbc-docker-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/azullus","download_url":"https://codeload.github.com/azullus/bc-docker-manager/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azullus%2Fbc-docker-manager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30331830,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T05:25:20.737Z","status":"ssl_error","status_checked_at":"2026-03-10T05:25:17.430Z","response_time":106,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","ai-powered","anthropic","backup","business-central","claude","claude-api","container-management","desktop-app","devops","docker","electron","nextjs","powershell","react","tailwindcss","typescript"],"created_at":"2026-03-10T11:15:32.611Z","updated_at":"2026-03-10T11:15:33.264Z","avatar_url":"https://github.com/azullus.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BC Container Manager - Desktop App\n\nA native Windows desktop application for managing Business Central Docker containers. Built with Electron + Next.js.\n\n## Features\n\n- **Dashboard**: View all BC containers with real-time stats (CPU, memory, uptime)\n- **Container Management**: Start, stop, restart, remove containers\n- **Create Containers**: GUI wizard for deploying new BC containers via Install-BC-Helper.ps1\n- **Backups**: Create and manage database backups\n- **AI Troubleshooting**: Claude-powered assistant for BC container issues\n- **Settings**: Configure API keys, backup paths, and preferences\n\n## Quick Start (Development)\n\n```powershell\n# Navigate to project directory\ncd \"C:\\Obsidian\\AI-Projects\\BC-Docker-Manager\"\n\n# Install dependencies\nnpm install\n\n# Run in development mode\nnpm run electron:dev\n```\n\nThis starts both Next.js dev server and Electron, with hot-reload.\n\n## Building for Distribution\n\n### Prerequisites\n- Node.js 18+\n- npm 9+\n- Windows 10/11 (for building Windows installer)\n\n### Build Commands\n\n```powershell\n# Build Windows installer (.exe)\nnpm run electron:build:win\n\n# Build portable version (no install needed)\nnpm run electron:build:portable\n\n# Build unpacked (for testing)\nnpm run electron:pack\n```\n\n### Output\n\nBuilt files are in the `dist/` folder:\n- `BC Container Manager-Setup-1.0.0.exe` - Windows installer\n- `BC Container Manager-Portable-1.0.0.exe` - Portable executable\n- `win-unpacked/` - Unpacked app folder\n\n## App Icons\n\nBefore building, add your icon files to `assets/`:\n- `icon.ico` - Windows icon (256x256)\n- `icon.png` - PNG icon (512x512)\n\nTo generate icons from the SVG:\n1. Open `assets/icon.svg` in a browser\n2. Take a screenshot or use an online converter\n3. Use https://icoconvert.com to create .ico\n\n## Configuration\n\n### Settings (in-app)\n- **Anthropic API Key**: Required for AI troubleshooting\n- **Backup Directory**: Where backups are stored (default: `C:\\BCBackups`)\n- **Refresh Interval**: How often dashboard updates\n\n### Environment Variables\n- `ANTHROPIC_API_KEY` - Can also be set via environment (optional)\n\n## Architecture\n\n```\nBC-Docker-Manager/\n├── electron/\n│   ├── main.js           # Main process\n│   ├── preload.js        # Secure IPC bridge\n│   └── ipc-handlers.js   # Docker/backup/AI operations\n├── app/                  # Next.js pages\n│   ├── dashboard/        # Container list\n│   ├── setup/            # Docker prerequisites\n│   ├── create/           # Container wizard\n│   ├── backups/          # Backup management\n│   ├── troubleshoot/     # AI chat\n│   └── settings/         # Configuration\n├── components/\n│   ├── HNSErrorRecovery.tsx    # HNS error recovery UI\n│   └── NetworkDiagnostics.tsx  # Network health panel\n├── lib/\n│   ├── electron-api.ts   # Unified API (works in web \u0026 Electron)\n│   └── hns-error-detector.ts   # HNS error pattern detection\n├── scripts/\n│   ├── Deploy-BC-Container.ps1  # Primary deployment (direct Docker)\n│   ├── Install-BC-Helper.ps1    # Legacy deployment (BcContainerHelper)\n│   ├── Fix-HNS-State.ps1        # HNS cleanup\n│   └── Diagnose-HNS-Ports.ps1   # Network diagnostics\n└── assets/               # App icons\n```\n\n## How It Works\n\n1. **Electron main process** creates the window and handles IPC\n2. **Preload script** exposes `window.electronAPI` to the renderer\n3. **React UI** calls `lib/electron-api.ts` which routes to:\n   - In Electron: IPC handlers (direct Docker/PowerShell access)\n   - In Web: Next.js API routes (for development)\n\n## Troubleshooting\n\n### \"Docker not connected\"\n- Ensure Docker Desktop is running\n- Check that Docker is using Windows containers (or WSL2)\n\n### \"PowerShell script not found\"\n- Verify scripts exist in `scripts/` directory\n- Check execution policy: `Set-ExecutionPolicy -Scope CurrentUser Bypass`\n\n### HNS Port Conflict (0x803b0013)\nThis is common on Windows 11 24H2. The app will auto-detect and show recovery options.\n\n**Manual Fix:**\n```powershell\n# Run as Administrator\n.\\scripts\\Diagnose-HNS-Ports.ps1   # Identify orphaned resources\n.\\scripts\\Fix-HNS-State.ps1 -Force # Clean HNS state\n```\n\n### Container Deployment Fails\nThe app uses `Deploy-BC-Container.ps1` by default which bypasses BcContainerHelper HNS issues.\n\nIf deployment still fails:\n1. Click \"Show Network Diagnostics\" in the Create Container page\n2. Run diagnostics to identify conflicts\n3. Use \"Clean HNS State\" to clear orphaned resources\n4. Retry deployment\n\n### Build fails\n- Delete `node_modules` and `package-lock.json`, then `npm install`\n- Ensure you have the latest npm: `npm install -g npm@latest`\n\n## License\n\nMIT License - See LICENSE.txt\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazullus%2Fbc-docker-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fazullus%2Fbc-docker-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazullus%2Fbc-docker-manager/lists"}