stl-storage/docker-compose.yml
kris 3dff6b00d4 Initial commit: STL Storage Application
- Complete web-based STL file storage and 3D viewer
- Express.js backend with SQLite database
- Interactive Three.js 3D viewer with orbit controls
- File upload with drag-and-drop support
- Security features: rate limiting, input validation, helmet
- Container deployment with Docker/Podman
- Production-ready configuration management
- Comprehensive logging and monitoring

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-07 16:18:58 +00:00

31 lines
805 B
YAML

version: '3.8'
services:
stl-storage:
build: .
container_name: stl-storage-app
ports:
- "3000:3000"
volumes:
# Persistent storage for uploads
- ./uploads:/app/uploads
# Persistent storage for database and logs
- stl_data:/app/data
- stl_logs:/app/logs
environment:
- NODE_ENV=production
- PORT=3000
- LOG_LEVEL=info
- MAX_FILE_SIZE=104857600
- RATE_LIMIT_MAX_REQUESTS=100
restart: unless-stopped
healthcheck:
test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000/api/files', (res) => { process.exit(res.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1))"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
volumes:
stl_data:
stl_logs: