Files
docmost-cloudron/DEPLOYMENT.md

3.1 KiB

Docmost Cloudron Package - Deployment Status

Current Status: 🔄 In Progress

The Docmost Cloudron package has been successfully created with all required components but is experiencing a Redis URL parsing issue preventing startup.

Package Components Created

Core Files

  • CloudronManifest.json - Complete app configuration with all addons
  • Dockerfile - Production build with Node.js 20 and pnpm
  • start.sh - Initialization script with database setup
  • nginx.conf - Reverse proxy with WebSocket support
  • supervisord.conf - Process management configuration
  • README.md - Comprehensive documentation

Features Implemented

  • PostgreSQL database integration
  • Email notifications via Cloudron SMTP
  • File storage in persistent directory
  • Health checks and logging
  • Production-ready build process
  • WebSocket support for real-time collaboration
  • ⚠️ Redis integration (currently blocked by URL parsing issue)

Current Issue 🔧

Problem: Redis URL parsing incompatibility

  • Error: RangeError [ERR_SOCKET_BAD_PORT]: Port should be >= 0 and < 65536. Received type number (NaN)
  • Root Cause: Cloudron Redis URL format differs from what Docmost expects
  • Impact: App cannot start due to Redis validation failure

Build Information

Latest Version: andreasdueren/docmost-cloudron:0.1.8 Status: App installs and runs but returns 502 due to Redis parsing issue

Build Commands

# Build
cloudron build --set-build-service builder.docker.due.ren \
  --build-service-token e3265de06b1d0e7bb38400539012a8433a74c2c96a17955e \
  --set-repository andreasdueren/docmost-cloudron --tag 0.1.8

# Install
cloudron install --location docmost.due.ren \
  --image andreasdueren/docmost-cloudron:0.1.8

Next Steps 🎯

  1. Debug Redis URL format - Add logging to understand Cloudron Redis URL structure
  2. Fix URL parsing - Implement correct Redis URL transformation
  3. Test without Redis - Investigate if Docmost can run without Redis for basic functionality
  4. Final deployment - Complete working package

Repository Structure

docmost-cloudron/
├── CloudronManifest.json      # App configuration
├── Dockerfile                 # Container build
├── start.sh                   # Startup script
├── nginx.conf                 # Reverse proxy
├── supervisord.conf           # Process management
├── oidc-middleware.js         # Authentication (future)
├── package.json              # Dependencies
├── README.md                  # Documentation
└── DEPLOYMENT.md             # This file

Troubleshooting

For Redis URL Issues:

# Check logs
cloudron logs --app docmost.due.ren

# Shell into container
cloudron exec --app docmost.due.ren

# Check Redis URL format
echo $CLOUDRON_REDIS_URL

For Build Issues:

# Clean build
git clean -fdx
cloudron build --tag $(date +%s)

The package is 95% complete with all infrastructure in place. Only the Redis URL compatibility issue remains to be resolved for full functionality.