Remove CONFIGURATION.md and DEPLOYMENT.md files
Removed documentation files and updated references: - Deleted CONFIGURATION.md and DEPLOYMENT.md - Updated Dockerfile to remove CONFIGURATION.md copy - Updated start.sh to remove CONFIGURATION.md copy - Fixed license reference back to AGPL-3.0 (Docmost's actual license) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
157
CONFIGURATION.md
157
CONFIGURATION.md
@@ -1,157 +0,0 @@
|
|||||||
# Docmost Cloudron Configuration
|
|
||||||
|
|
||||||
Your Docmost instance is configured with Cloudron defaults but can be customized after installation.
|
|
||||||
|
|
||||||
## Current Configuration
|
|
||||||
|
|
||||||
**Email**: Uses Cloudron's internal email server by default
|
|
||||||
**Storage**: Uses local storage in `/app/data/uploads` by default
|
|
||||||
**Database**: PostgreSQL (managed by Cloudron)
|
|
||||||
**Cache**: Redis (managed by Cloudron)
|
|
||||||
|
|
||||||
## Custom Configuration
|
|
||||||
|
|
||||||
To customize your Docmost installation, you can create a `.env` file in the app's data directory:
|
|
||||||
|
|
||||||
### 1. Access Your App's Data Directory
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# SSH into your Cloudron server
|
|
||||||
cloudron exec --app docmost
|
|
||||||
|
|
||||||
# Navigate to the data directory
|
|
||||||
cd /app/data
|
|
||||||
|
|
||||||
# Copy the sample configuration
|
|
||||||
cp env.sample .env
|
|
||||||
```
|
|
||||||
|
|
||||||
### 2. Edit the Configuration
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Edit the .env file
|
|
||||||
nano .env
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3. Restart the App
|
|
||||||
|
|
||||||
After making changes to the `.env` file, restart the app:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cloudron restart --app docmost
|
|
||||||
```
|
|
||||||
|
|
||||||
## Common Customizations
|
|
||||||
|
|
||||||
### Custom Email Server
|
|
||||||
|
|
||||||
To use Gmail instead of Cloudron's email server:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# In /app/data/.env
|
|
||||||
MAIL_DRIVER=smtp
|
|
||||||
SMTP_HOST=smtp.gmail.com
|
|
||||||
SMTP_PORT=587
|
|
||||||
SMTP_USERNAME=your-email@gmail.com
|
|
||||||
SMTP_PASSWORD=your-app-password
|
|
||||||
SMTP_SECURE=true
|
|
||||||
MAIL_FROM_ADDRESS=your-email@gmail.com
|
|
||||||
MAIL_FROM_NAME="Docmost"
|
|
||||||
```
|
|
||||||
|
|
||||||
**Important**: Values with spaces must be quoted with double quotes.
|
|
||||||
|
|
||||||
### S3 Storage
|
|
||||||
|
|
||||||
To use Amazon S3 or compatible storage:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# In /app/data/.env
|
|
||||||
STORAGE_DRIVER=s3
|
|
||||||
AWS_S3_ACCESS_KEY_ID=your-access-key
|
|
||||||
AWS_S3_SECRET_ACCESS_KEY=your-secret-key
|
|
||||||
AWS_S3_REGION=us-east-1
|
|
||||||
AWS_S3_BUCKET=your-bucket-name
|
|
||||||
AWS_S3_ENDPOINT=https://s3.amazonaws.com
|
|
||||||
```
|
|
||||||
|
|
||||||
### File Upload Limits
|
|
||||||
|
|
||||||
To increase file upload limits:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# In /app/data/.env
|
|
||||||
FILE_UPLOAD_SIZE_LIMIT=100MB
|
|
||||||
FILE_IMPORT_SIZE_LIMIT=100MB
|
|
||||||
```
|
|
||||||
|
|
||||||
### Custom Draw.io Server
|
|
||||||
|
|
||||||
To use a self-hosted draw.io server:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# In /app/data/.env
|
|
||||||
DRAWIO_URL=https://your-drawio-server.com
|
|
||||||
```
|
|
||||||
|
|
||||||
## Available Environment Variables
|
|
||||||
|
|
||||||
See the full list of available environment variables in the [Docmost documentation](https://docmost.com/docs/self-hosting/environment-variables).
|
|
||||||
|
|
||||||
## Troubleshooting
|
|
||||||
|
|
||||||
### Check Current Configuration
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cloudron exec --app docmost -- env | grep -E "(MAIL|STORAGE|S3)" | sort
|
|
||||||
```
|
|
||||||
|
|
||||||
### View App Logs
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cloudron logs --app docmost
|
|
||||||
```
|
|
||||||
|
|
||||||
### .env File Format Errors
|
|
||||||
|
|
||||||
If you see errors like `line 1: Docmost: command not found`, your .env file has syntax errors:
|
|
||||||
|
|
||||||
1. **Values with spaces must be quoted**:
|
|
||||||
```bash
|
|
||||||
# Wrong:
|
|
||||||
MAIL_FROM_NAME=My Company
|
|
||||||
|
|
||||||
# Correct:
|
|
||||||
MAIL_FROM_NAME="My Company"
|
|
||||||
```
|
|
||||||
|
|
||||||
2. **No spaces around equals sign**:
|
|
||||||
```bash
|
|
||||||
# Wrong:
|
|
||||||
MAIL_DRIVER = smtp
|
|
||||||
|
|
||||||
# Correct:
|
|
||||||
MAIL_DRIVER=smtp
|
|
||||||
```
|
|
||||||
|
|
||||||
3. **Check for invalid characters**:
|
|
||||||
```bash
|
|
||||||
# Validate your .env file:
|
|
||||||
cloudron exec --app docmost -- cat /app/data/.env
|
|
||||||
```
|
|
||||||
|
|
||||||
### Reset to Defaults
|
|
||||||
|
|
||||||
To reset to Cloudron defaults, simply remove the custom .env file:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cloudron exec --app docmost -- rm -f /app/data/.env
|
|
||||||
cloudron restart --app docmost
|
|
||||||
```
|
|
||||||
|
|
||||||
## Security Notes
|
|
||||||
|
|
||||||
- The `.env` file is stored in `/app/data/` which is included in Cloudron backups
|
|
||||||
- Database and Redis credentials are managed by Cloudron and should not be changed
|
|
||||||
- Email credentials are stored in plaintext in the `.env` file
|
|
||||||
- Consider using app-specific passwords for email providers
|
|
@@ -1,90 +0,0 @@
|
|||||||
# 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
|
|
||||||
```bash
|
|
||||||
# Build
|
|
||||||
cloudron build
|
|
||||||
|
|
||||||
# Install
|
|
||||||
cloudron install --location docmost
|
|
||||||
```
|
|
||||||
|
|
||||||
## 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
|
|
||||||
├── env.sample # Configuration template
|
|
||||||
├── CONFIGURATION.md # User documentation
|
|
||||||
├── README.md # Documentation
|
|
||||||
└── DEPLOYMENT.md # This file
|
|
||||||
```
|
|
||||||
|
|
||||||
## Troubleshooting
|
|
||||||
|
|
||||||
**For Redis URL Issues:**
|
|
||||||
```bash
|
|
||||||
# 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:**
|
|
||||||
```bash
|
|
||||||
# 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.
|
|
@@ -26,7 +26,6 @@ RUN mkdir -p /tmp/data /app/data && \
|
|||||||
COPY start.sh /app/code/
|
COPY start.sh /app/code/
|
||||||
COPY nginx.conf /etc/nginx/sites-available/default
|
COPY nginx.conf /etc/nginx/sites-available/default
|
||||||
COPY env.sample /app/code/env.sample
|
COPY env.sample /app/code/env.sample
|
||||||
COPY CONFIGURATION.md /app/code/CONFIGURATION.md
|
|
||||||
|
|
||||||
# Override nginx global logs to prevent read-only filesystem errors
|
# Override nginx global logs to prevent read-only filesystem errors
|
||||||
RUN sed -i 's|error_log /var/log/nginx/error.log;|error_log /dev/stderr;|' /etc/nginx/nginx.conf && \
|
RUN sed -i 's|error_log /var/log/nginx/error.log;|error_log /dev/stderr;|' /etc/nginx/nginx.conf && \
|
||||||
|
@@ -152,7 +152,7 @@ For issues related to:
|
|||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
This Cloudron package is provided under the same license as Docmost (MIT).
|
This Cloudron package is provided under the same license as Docmost (AGPL-3.0).
|
||||||
|
|
||||||
## Version History
|
## Version History
|
||||||
|
|
||||||
|
5
start.sh
5
start.sh
@@ -11,12 +11,11 @@ if [ ! -d "/app/data/client-dist" ]; then
|
|||||||
chown -R cloudron:cloudron /app/data/client-dist
|
chown -R cloudron:cloudron /app/data/client-dist
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Copy sample .env file and documentation for user reference
|
# Copy sample .env file for user reference
|
||||||
if [ ! -f "/app/data/env.sample" ]; then
|
if [ ! -f "/app/data/env.sample" ]; then
|
||||||
echo "=> Copying configuration files to /app/data/"
|
echo "=> Copying configuration files to /app/data/"
|
||||||
cp /app/code/env.sample /app/data/env.sample
|
cp /app/code/env.sample /app/data/env.sample
|
||||||
cp /app/code/CONFIGURATION.md /app/data/CONFIGURATION.md
|
chown cloudron:cloudron /app/data/env.sample
|
||||||
chown cloudron:cloudron /app/data/env.sample /app/data/CONFIGURATION.md
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Initialize /app/data if it's empty (first run)
|
# Initialize /app/data if it's empty (first run)
|
||||||
|
Reference in New Issue
Block a user