Update README with full installation and usage docs

This commit is contained in:
2026-04-06 18:05:36 +00:00
parent c0f1f04fc9
commit 5090d682d7

115
README.md
View File

@@ -1,3 +1,114 @@
# runtipi-onlyoffice-docs
# ONLYOFFICE Docs for Runtipi
Runtipi-compatible app configuration for ONLYOFFICE Document Server
This is a Runtipi-compatible app configuration for [ONLYOFFICE Document Server](https://www.onlyoffice.com/office-suite.aspx).
## Installation
### Option 1: Via Runtipi App Store (if published)
1. Search for "ONLYOFFICE Docs" in the Runtipi app store
2. Click Install
3. Configure your JWT secret and other options
4. Start the app
### Option 2: Manual Installation (Custom App Store)
1. Copy the `onlyoffice-docs` folder to your Runtipi custom apps directory:
```bash
cp -r onlyoffice-docs /path/to/runtipi/apps/
```
2. Restart Runtipi or refresh the app list
3. Install from the UI
### Option 3: Direct Docker Compose
```bash
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
1. Install the ONLYOFFICE connector app in Nextcloud
2. Go to Settings → ONLYOFFICE
3. Configure:
- **Document Editing Service address**: `https://onlyoffice-docs.yourdomain.com` or `http://your-ip:8044`
- **Secret key**: Same as `ONLYOFFICE_JWT_SECRET`
### Seafile Integration
1. Add to `seahub_settings.py`:
```python
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 logs
- `data/` - Certificates and configuration
- `lib/` - File cache and temporary files
- `db/` - 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.yml` configuration
- Increase container memory limits
- Check disk I/O performance
## Resources
- [ONLYOFFICE Documentation](https://helpcenter.onlyoffice.com/docs/)
- [Docker Hub](https://hub.docker.com/r/onlyoffice/documentserver)
- [GitHub](https://github.com/ONLYOFFICE/DocumentServer)
- [API Documentation](https://api.onlyoffice.com/)