pp-planer/docker-compose.yml
Thorsten Bus 1756473701 feat: Laravel 12 scaffolding with Breeze Vue + Docker setup
- Install Laravel 12 with Breeze (Vue stack + Inertia.js)
- Configure Pest testing framework (5 tests passing)
- Add Docker multi-stage build (PHP 8.3 + LibreOffice + ImageMagick)
- Create docker-compose.yml with app + node services
- Configure Vite for Docker hot-reload
- Set app locale to 'de' (German)
- Add Vue packages: @vueuse/core, vue-draggable-plus, vue3-dropzone
- Update .env.example with all project vars
- Relocate spike files: src/Cts/ → app/Cts/ (Laravel autoload)
- Tests: 5 passed (14 assertions)
- Vite build: successful
- Docker: app container running

Task: T1 - Laravel Scaffolding + Breeze Vue + Docker
2026-03-01 19:25:32 +01:00

75 lines
1.7 KiB
YAML

version: '3.8'
services:
app:
build:
context: .
dockerfile: Dockerfile
container_name: cts-presenter-app
restart: unless-stopped
working_dir: /app
environment:
- APP_ENV=${APP_ENV}
- APP_DEBUG=${APP_DEBUG}
- APP_KEY=${APP_KEY}
- APP_URL=${APP_URL}
- DB_CONNECTION=${DB_CONNECTION}
- CTS_API_URL=${CTS_API_URL}
- CTS_API_TOKEN=${CTS_API_TOKEN}
- CHURCHTOOLS_URL=${CHURCHTOOLS_URL}
- CHURCHTOOLS_CLIENT_ID=${CHURCHTOOLS_CLIENT_ID}
- CHURCHTOOLS_CLIENT_SECRET=${CHURCHTOOLS_CLIENT_SECRET}
- CHURCHTOOLS_REDIRECT_URI=${CHURCHTOOLS_REDIRECT_URI}
volumes:
- ./:/app
- /app/node_modules
- /app/vendor
ports:
- "8000:8000"
networks:
- cts-network
depends_on:
- node
node:
image: node:20-alpine
container_name: cts-presenter-node
restart: unless-stopped
working_dir: /app
environment:
- NODE_ENV=development
volumes:
- ./:/app
- /app/node_modules
ports:
- "5173:5173"
networks:
- cts-network
command: npm run dev
# Optional: SQLite database service (for reference, SQLite runs in-process)
# For MySQL, uncomment and configure:
# mysql:
# image: mysql:8.0
# container_name: cts-presenter-mysql
# restart: unless-stopped
# environment:
# MYSQL_DATABASE: ${DB_DATABASE}
# MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}
# MYSQL_PASSWORD: ${DB_PASSWORD}
# MYSQL_USER: ${DB_USERNAME}
# volumes:
# - mysql_data:/var/lib/mysql
# ports:
# - "3306:3306"
# networks:
# - cts-network
networks:
cts-network:
driver: bridge
# volumes:
# mysql_data:
# driver: local