Files
michaelschiemer/.deployment-backup/x_ansible/playbooks/deploy/includes/docker_compose.yml
Michael Schiemer 9b74ade5b0 feat: Fix discovery system critical issues
Resolved multiple critical discovery system issues:

## Discovery System Fixes
- Fixed console commands not being discovered on first run
- Implemented fallback discovery for empty caches
- Added context-aware caching with separate cache keys
- Fixed object serialization preventing __PHP_Incomplete_Class

## Cache System Improvements
- Smart caching that only caches meaningful results
- Separate caches for different execution contexts (console, web, test)
- Proper array serialization/deserialization for cache compatibility
- Cache hit logging for debugging and monitoring

## Object Serialization Fixes
- Fixed DiscoveredAttribute serialization with proper string conversion
- Sanitized additional data to prevent object reference issues
- Added fallback for corrupted cache entries

## Performance & Reliability
- All 69 console commands properly discovered and cached
- 534 total discovery items successfully cached and restored
- No more __PHP_Incomplete_Class cache corruption
- Improved error handling and graceful fallbacks

## Testing & Quality
- Fixed code style issues across discovery components
- Enhanced logging for better debugging capabilities
- Improved cache validation and error recovery

Ready for production deployment with stable discovery system.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-13 12:04:17 +02:00

68 lines
1.8 KiB
YAML

---
# Datei: ansible/playbooks/deploy/includes/docker_compose.yml
# Verwaltet die Docker-Compose-Konfiguration und -Ausführung
- name: Erstelle Docker-Compose-Datei
copy:
dest: "{{ docker_compose_project_path }}/docker-compose-simple.yml"
content: |
version: '3.8'
services:
php:
container_name: michaelschiemer_php
build:
context: ./docker/php
dockerfile: Dockerfile-simple
volumes:
- ./src:/var/www/html/src:rw
- ./public:/var/www/html/public:rw
networks:
- backend
nginx:
container_name: michaelschiemer_nginx
image: nginx:alpine
ports:
- "80:80"
- "443:443"
volumes:
- ./public:/var/www/html/public:ro
- ./docker/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
depends_on:
- php
networks:
- frontend
- backend
redis:
container_name: michaelschiemer_redis
image: redis:alpine
volumes:
- ./docker/redis/redis.conf:/usr/local/etc/redis/redis.conf:ro
command: ["redis-server", "/usr/local/etc/redis/redis.conf"]
networks:
- cache
networks:
frontend:
backend:
cache:
owner: root
group: root
mode: '0644'
- name: Erstelle .env-Datei falls nicht vorhanden
copy:
dest: "{{ docker_compose_project_path }}/.env"
content: |
COMPOSE_PROJECT_NAME=michaelschiemer
APP_ENV=production
APP_PORT=80
APP_SSL_PORT=443
owner: root
group: root
mode: '0644'
when: not lookup('vars', 'project_root', default=false)