{ "name": "B2In (Dev Container)", // 1. DIES IST DER WICHTIGSTE TEIL: // Wir verwenden Docker Compose für alle Services "dockerComposeFile": [ "../docker-compose.yml" ], "service": "laravel.test", // 3. WIR DEFINIEREN DEN ARBEITSBEREICH: // Das ist der Pfad, in dem Ihr Code *innerhalb* des Containers liegt. "workspaceFolder": "/var/www/html", // 4. WIR LEGEN DEN BENUTZER FEST: // Laravel Sail führt Befehle standardmäßig als 'sail'-Benutzer aus, um Berechtigungsprobleme zu vermeiden. "remoteUser": "sail", // 5. ZUSÄTZLICHE ENTWICKLER-TOOLS (FEATURES): // Features werden über postCreateCommand installiert um Kompatibilitätsprobleme zu vermeiden "features": {}, // 6. BEFEHLE NACH DEM ERSTELLEN: // Installiert nur die Tools die ohne Root-Rechte funktionieren //"postCreateCommand": "composer install --no-interaction --prefer-dist --optimize-autoloader", // 7. EDITOR-ANPASSUNGEN (Optional, aber sehr empfohlen): "customizations": { "vscode": { "extensions": [ "bmewburn.vscode-intelephense-client", "onecentlin.laravel-blade", "shufo.vscode-blade-formatter", "bradlc.vscode-tailwindcss", "Anthropic.claude-code", "adrianwilczynski.alpine-js-intellisense", "onecentlin.laravel-extension-pack", "cierra.livewire-vscode" ] } }, // 8. ZU STARTENDE DIENSTE: // Legt fest, welche Dienste aus der docker-compose.yml gestartet werden sollen. "runServices": [ "laravel.test", "mysql", "redis", "mailpit" ], // 9. ZUSÄTZLICHE KONFIGURATION: // Umgebungsvariablen für den DevContainer "containerEnv": { "WWWUSER": "501", "WWWGROUP": "20", "LARAVEL_SAIL": "1" }, // 10. MOUNT-KONFIGURATION: // Stellt sicher, dass der Code korrekt gemountet wird "mounts": [ "source=${localWorkspaceFolder},target=/var/www/html,type=bind,consistency=cached" ], // 11. FORWARD PORTS: // Ports die automatisch weitergeleitet werden sollen "forwardPorts": [ 5174, 5175, 33067, 6381, 8026 ], "portsAttributes": { "5174": { "label": "Vite Dev Server (Portal)", "onAutoForward": "notify" }, "5175": { "label": "Vite Dev Server (Web)", "onAutoForward": "notify" }, "33067": { "label": "MySQL", "onAutoForward": "silent" }, "6381": { "label": "Redis", "onAutoForward": "silent" }, "8026": { "label": "Mailpit Dashboard", "onAutoForward": "notify" } } }