5090d682d79c4ddecab60fcb35dbf7b37ab02b3f
ONLYOFFICE Docs for Runtipi
This is a Runtipi-compatible app configuration for ONLYOFFICE Document Server.
Installation
Option 1: Via Runtipi App Store (if published)
- Search for "ONLYOFFICE Docs" in the Runtipi app store
- Click Install
- Configure your JWT secret and other options
- Start the app
Option 2: Manual Installation (Custom App Store)
- Copy the
onlyoffice-docsfolder to your Runtipi custom apps directory:cp -r onlyoffice-docs /path/to/runtipi/apps/ - Restart Runtipi or refresh the app list
- Install from the UI
Option 3: Direct Docker Compose
cd onlyoffice-docs
# Edit the .env file with your settings
cp .env.example .env
nano .env
# Start with basic configuration (internal PostgreSQL)
docker-compose up -d
# Or use external database configuration for production
docker-compose -f docker-compose.external-db.yml up -d
Configuration
Required Settings
| Variable | Description |
|---|---|
ONLYOFFICE_JWT_SECRET |
Secret key for JWT authentication. Required for security. |
Optional Settings
| Variable | Default | Description |
|---|---|---|
ONLYOFFICE_JWT_ENABLED |
true |
Enable/disable JWT validation |
ONLYOFFICE_JWT_HEADER |
Authorization |
HTTP header for JWT token |
ONLYOFFICE_JWT_IN_BODY |
false |
Allow JWT in request body |
ONLYOFFICE_USE_UNAUTHORIZED_STORAGE |
false |
Accept self-signed certs |
ONLYOFFICE_WOPI_ENABLED |
false |
Enable WOPI protocol |
Integration Examples
Nextcloud Integration
- Install the ONLYOFFICE connector app in Nextcloud
- Go to Settings → ONLYOFFICE
- Configure:
- Document Editing Service address:
https://onlyoffice-docs.yourdomain.comorhttp://your-ip:8044 - Secret key: Same as
ONLYOFFICE_JWT_SECRET
- Document Editing Service address:
Seafile Integration
- Add to
seahub_settings.py:ONLYOFFICE_APIJS_URL = 'https://onlyoffice-docs.yourdomain.com/web-apps/apps/api/documents/api.js' ONLYOFFICE_JWT_SECRET = 'your-jwt-secret'
File Structure
onlyoffice-docs/
├── config.json # Runtipi app configuration
├── docker-compose.yml # Main compose file (self-contained)
├── docker-compose.external-db.yml # Alternative with external DB
├── description.md # App description for Runtipi UI
├── .env.example # Example environment variables
└── README.md # This file
Data Persistence
Data is stored in ${APP_DATA_DIR}/data/:
logs/- Application logsdata/- Certificates and configurationlib/- File cache and temporary filesdb/- PostgreSQL database (basic config)fonts/- Custom fonts
Troubleshooting
Container won't start
- Check logs:
docker logs onlyoffice-docs - Ensure port 8044 is not in use
- Verify JWT_SECRET is set
Integration issues with Nextcloud
- Ensure both services can reach each other
- If using self-signed certs, enable
USE_UNAUTHORIZED_STORAGE - Check that JWT secrets match exactly
Performance issues
- Use the
docker-compose.external-db.ymlconfiguration - Increase container memory limits
- Check disk I/O performance
Resources
Description
Languages
Markdown
100%