This repository showcases an advanced Nextcloud installation. The following features are included:
- postgres as database
- caddy as reverse proxy (supports automatic TLS)
- no nginx or apache
- full text search using elasticsearch
- OCR using tesseract
- Docker and docker-compose
- A domain and an A record pointing to the server (this is a requirement for caddy's automatic TLS feature; see https://caddyserver.com/docs/automatic-https)
docker-compose up -dThis is useful if you want to use Nextcloud to sync/backup your calendars, contacts and tasks from your phone.
docker-compose exec -u www-data nextcloud ./occ app:install contacts
docker-compose exec -u www-data nextcloud ./occ app:install calendar
docker-compose exec -u www-data nextcloud ./occ app:install tasksInstall the following Nextcloud apps:
- Full text search
- Full text search - Elasticsearch Platform
- Full text search - Files
docker-compose exec -u www-data nextcloud ./occ app:install fulltextsearch
docker-compose exec -u www-data nextcloud ./occ app:install fulltextsearch_elasticsearch
docker-compose exec -u www-data nextcloud ./occ app:install files_fulltextsearch
docker-compose exec -u www-data nextcloud ./occ app:install files_fulltextsearch_tesseractGo to /settings/admin/fulltextsearch and configure elasticsearch:
- Server address:
http://elastic:mysecretpassword@elasticsearch:9200 - Index: nextcloud_index (or whatever)
- Analyzer tokenizer: standard
- Local files: yes
- External files: Index path and content
- Index PDF: yes
- Index Office-files: yes
In a terminal run:
docker-compose exec -u www-data nextcloud /var/www/html/occ fulltextsearch:indexFuture index updates will be handled by the nextcloud cronjob.
Go to /settings/admin. Enter SMTP data.
Edit the file nextcloud/config/custom.config.php.
- Document
envfiles - OCR using tesseract (Installed but not verified)
- Check if fulltextsearch index update is performed with cron