Runbooks¶
Operational procedures for managing the Freeze Design webshop.
Environment status
There is currently no production environment. The only live environment is
staging (https://staging.freezedesign.eu), running from
docker-compose.staging.yml on the staging VPS. Procedures that reference
production (or docker-compose.prod.yml) describe the future production setup
and cannot be executed today.
Available Runbooks¶
- Deployment - Deployment, rollback, and migration procedures
- Disaster Recovery - Backup, restore, and recovery procedures
- Monitoring - Sentry, UptimeRobot, and alerting setup
- Alerting - Step-by-step response procedures for every alert type
- Discord Webhooks - Discord channel and webhook configuration
- Eefje Feedback Intake - Intake-proces voor bugs/wensen via de feedback-repo
Quick Reference¶
On the staging VPS (/opt/webshop):
Check Application Status¶
# Docker containers
docker compose -f docker-compose.staging.yml ps
# Backend logs
docker compose -f docker-compose.staging.yml logs backend --tail 100 -f
# Frontend logs
docker compose -f docker-compose.staging.yml logs frontend --tail 100 -f
Restart Services¶
docker compose -f docker-compose.staging.yml restart backend
docker compose -f docker-compose.staging.yml restart frontend
docker compose -f docker-compose.staging.yml restart celery
Database Access¶
# Credentials come from .env.staging (POSTGRES_USER / POSTGRES_DB)
docker compose -f docker-compose.staging.yml exec db psql -U "$POSTGRES_USER" -d "$POSTGRES_DB"
Incident Response¶
Priority Levels¶
| Level | Response Time | Examples |
|---|---|---|
| P1 | Immediate | Site down, payment failures |
| P2 | 1 hour | Major feature broken |
| P3 | 4 hours | Minor bugs, degraded performance |
| P4 | Next business day | UI issues, minor improvements |
Escalation Path¶
For a solo-operator setup, "escalation" means increasing your own response urgency. See the Alerting Runbook for detailed response procedures per alert type.