Pieter
8a88096619
🔧 fix: Optimize Collabora Online performance for 2-core servers
═══════════════════════════════════════════════════════════════
🎯 PROBLEM SOLVED: Collabora Server Warnings
═══════════════════════════════════════════════════════════════
Fixed two critical performance warnings in Collabora Online:
1. ❌ "Slow Kit jail setup with copying, cannot bind-mount"
→ Error: "coolmount: Operation not permitted"
2. ❌ "Your server is configured with insufficient hardware resources"
→ No performance tuning for 2-core CPX22 servers
═══════════════════════════════════════════════════════════════
✅ SOLUTION IMPLEMENTED
═══════════════════════════════════════════════════════════════
Added Docker Capabilities:
cap_add:
- MKNOD # Create device nodes for bind-mounting
- SYS_CHROOT # Use chroot for jail isolation
Performance Tuning (optimized for 2 CPU cores):
--o:num_prespawn_children=1 # Pre-spawn 1 child process
--o:per_document.max_concurrency=2 # Max 2 threads per document (matches CPU cores)
═══════════════════════════════════════════════════════════════
📊 IMPACT
═══════════════════════════════════════════════════════════════
BEFORE:
⚠️ "coolmount: Operation not permitted" (repeated errors)
⚠️ "Slow Kit jail setup with copying"
⚠️ "Insufficient hardware resources"
⚠️ Poor document editing performance
AFTER:
✅ No more coolmount errors (bind-mount working)
✅ Faster jail initialization
✅ Optimized for 2-core servers
✅ Smooth document editing
ℹ️ Minor systemplate warning remains (safe to ignore)
═══════════════════════════════════════════════════════════════
🔄 DEPLOYMENT METHOD
═══════════════════════════════════════════════════════════════
Applied via live config update (NO data loss):
1. docker compose down
2. Update docker-compose.yml
3. docker compose up -d
Downtime: ~30 seconds
User Impact: Minimal (refresh page to reconnect)
Data Safety: ✅ All data preserved
═══════════════════════════════════════════════════════════════
📝 TECHNICAL DETAILS
═══════════════════════════════════════════════════════════════
Server Specs (CPX22):
- CPU: 2 cores (detected with nproc)
- RAM: 3.7GB total
- Collabora limits: 1GB memory, 2 CPUs
Configuration follows Collabora SDK recommendations:
- per_document.max_concurrency ≤ CPU cores
- num_prespawn_children = 1 (suitable for small deployments)
Reference: https://sdk.collaboraonline.com/docs/installation/Configuration.html#performance
═══════════════════════════════════════════════════════════════
✨ FUTURE DEPLOYMENTS
═══════════════════════════════════════════════════════════════
All new clients will automatically get optimized Collabora configuration.
No rebuild required for config-only changes like this.
═══════════════════════════════════════════════════════════════
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>