feat: complete memorial website features

- Add user contribution system (memories, timeline entries)
- Add AI content moderation with Ollama (bad word detection + qwen3:4b)
- Add family photo/video upload with admin approval
- Add candle lighting feature
- Add timeline and recipe sections
- Add QR code page and OG image
- Add site authentication (password-protected access)
- Add proxy middleware for auth routing
- Add admin dashboard for content management
- Remove email fields, make name optional (default: Anonym)
- Add CI/CD pipeline for Gitea Actions
- Add Docker deployment configuration
- Optimize Ollama RAM usage (42GB → 2.9GB)
- Fix API routes accessibility through proxy middleware

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
denshooter
2026-02-18 12:20:33 +01:00
parent 43e9d49620
commit a34d406375
54 changed files with 5989 additions and 248 deletions
+12 -12
View File
@@ -1,24 +1,24 @@
version: '3.8'
services:
oma:
oma-memorial:
build: .
container_name: oma-memorial
restart: unless-stopped
ports:
- "3000:3000"
volumes:
- oma_data:/data
environment:
- ADMIN_PASSWORD=${ADMIN_PASSWORD:-change-me}
- DATA_DIR=/data
- NODE_ENV=production
- PORT=3000
volumes:
- ./data:/app/data
networks:
- proxy
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost:3000/api/auth"]
test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000', (r) => {process.exit(r.statusCode === 200 ? 0 : 1)})"]
interval: 30s
timeout: 10s
retries: 3
start_period: 15s
start_period: 40s
volumes:
oma_data:
driver: local
networks:
proxy:
external: true