mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-01-10 09:51:02 +01:00
183 lines
9.1 KiB
Markdown
183 lines
9.1 KiB
Markdown
## ⚠ Open Issue : [🐛 [NextCloud] Mounted localdisk does not have write permissions (opened 2025-09-23)](https://github.com/alexbelgium/hassio-addons/issues/2123) by [@Patabugen](https://github.com/Patabugen)
|
|
# Home assistant add-on: Nextcloud
|
|
|
|
|
|
I maintain this and other Home Assistant add-ons in my free time: keeping up with upstream changes, HA changes, and testing on real hardware takes a lot of time (and some money). I use around 5-10 of my >110 addons so regularly I install test machines (and purchase some test services such as vpn) that I don't use myself to troubleshoot and improve the addons
|
|
|
|
If this add-on saves you time or makes your setup easier, I would be very grateful for your support!
|
|
|
|
[![Buy me a coffee][donation-badge]](https://www.buymeacoffee.com/alexbelgium)
|
|
[![Donate via PayPal][paypal-badge]](https://www.paypal.com/donate/?hosted_button_id=DZFULJZTP3UQA)
|
|
|
|
## Addon informations
|
|
|
|

|
|

|
|

|
|
|
|
[](https://www.codacy.com/gh/alexbelgium/hassio-addons/dashboard?utm_source=github.com&utm_medium=referral&utm_content=alexbelgium/hassio-addons&utm_campaign=Badge_Grade)
|
|
[](https://github.com/alexbelgium/hassio-addons/actions/workflows/weekly-supelinter.yaml)
|
|
[](https://github.com/alexbelgium/hassio-addons/actions/workflows/onpush_builder.yaml)
|
|
|
|
[donation-badge]: https://img.shields.io/badge/Buy%20me%20a%20coffee-%23d32f2f?logo=buy-me-a-coffee&style=flat&logoColor=white
|
|
[paypal-badge]: https://img.shields.io/badge/Donate%20via%20PayPal-0070BA?logo=paypal&style=flat&logoColor=white
|
|
|
|
![Uses elasticsearch][elasticsearch-shield]
|
|
|
|
_Thanks to everyone having starred my repo! To star it click on the image below, then it will be on top right. Thanks!_
|
|
|
|
[](https://github.com/alexbelgium/hassio-addons/stargazers)
|
|
|
|

|
|
|
|
## About
|
|
|
|
Various tweaks and configuration options addition.
|
|
Inital fork from version : https://github.com/haberda/hassio_addons
|
|
This addon is based on the [docker image](https://github.com/linuxserver/docker-nextcloud) from linuxserver.io.
|
|
|
|
## Configuration
|
|
|
|
Webui can be found at `<your-ip>:port`.
|
|
|
|
### Options
|
|
|
|
| Option | Type | Default | Description |
|
|
|--------|------|---------|-------------|
|
|
| `PGID` | int | `1000` | Group ID for file permissions |
|
|
| `PUID` | int | `1000` | User ID for file permissions |
|
|
| `TZ` | str | | Timezone (e.g., `Europe/London`) |
|
|
| `additional_apps` | str | | Additional APK packages to install (comma-separated) |
|
|
| `trusted_domains` | str | | Trusted domains for Nextcloud access |
|
|
| `use_own_certs` | bool | `false` | Use custom SSL certificates |
|
|
| `certfile` | str | `fullchain.pem` | SSL certificate file (in `/ssl/`) |
|
|
| `keyfile` | str | `privkey.pem` | SSL private key file (in `/ssl/`) |
|
|
| `OCR` | bool | `false` | Enable Tesseract OCR capability |
|
|
| `OCRLANG` | str | | OCR languages (e.g., `fra,eng`) |
|
|
| `Full_Text_Search` | bool | `false` | Enable full-text search with Elasticsearch |
|
|
| `elasticsearch_server` | str | | Elasticsearch server address (ip:port) |
|
|
| `enable_thumbnails` | bool | `true` | Enable thumbnail generation |
|
|
| `default_phone_region` | str | | Default phone region (ISO 3166-1 alpha-2) |
|
|
| `disable_updates` | bool | `false` | Prevent automatic app updates |
|
|
| `env_memory_limit` | str | `512M` | PHP memory limit |
|
|
| `env_post_max_size` | str | `512M` | Maximum POST size |
|
|
| `env_upload_max_filesize` | str | `512M` | Maximum upload file size |
|
|
| `localdisks` | str | | Local drives to mount (e.g., `sda1,sdb1,MYNAS`) |
|
|
| `networkdisks` | str | | SMB shares to mount (e.g., `//SERVER/SHARE`) |
|
|
| `cifsusername` | str | | SMB username for network shares |
|
|
| `cifspassword` | str | | SMB password for network shares |
|
|
| `cifsdomain` | str | | SMB domain for network shares |
|
|
| `skip_permissions_check` | bool | `false` | Skip file permissions checking |
|
|
|
|
### Example Configuration
|
|
|
|
```yaml
|
|
PGID: 1000
|
|
PUID: 1000
|
|
TZ: "Europe/London"
|
|
additional_apps: "vim,curl"
|
|
trusted_domains: "nextcloud.example.com,192.168.1.100"
|
|
use_own_certs: true
|
|
certfile: "fullchain.pem"
|
|
keyfile: "privkey.pem"
|
|
OCR: true
|
|
OCRLANG: "eng,fra,deu"
|
|
enable_thumbnails: true
|
|
env_memory_limit: "1024M"
|
|
localdisks: "sda1,sdb1"
|
|
networkdisks: "//192.168.1.100/nextcloud"
|
|
cifsusername: "nextcloud_user"
|
|
cifspassword: "password123"
|
|
```
|
|
|
|
### Mounting Drives
|
|
|
|
This addon supports mounting both local drives and remote SMB shares:
|
|
|
|
- **Local drives**: See [Mounting Local Drives in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Mounting-Local-Drives-in-Addons)
|
|
- **Remote shares**: See [Mounting Remote Shares in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Mounting-remote-shares-in-Addons)
|
|
|
|
### Custom Scripts and Environment Variables
|
|
|
|
This addon supports custom scripts and environment variables through the `addon_config` mapping:
|
|
|
|
- **Custom scripts**: See [Running Custom Scripts in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Running-custom-scripts-in-Addons)
|
|
- **env_vars option**: Use the add-on `env_vars` option to pass extra environment variables (uppercase or lowercase names). See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details.
|
|
|
|
### Custom Script Example
|
|
|
|
Create `/config/addons_autoscripts/nextcloud-ocr.sh` for custom initialization:
|
|
|
|
```bash
|
|
#!/usr/bin/with-contenv bashio
|
|
# shellcheck shell=bash
|
|
|
|
# Custom script executed at addon start
|
|
# Runs only after initialization is done
|
|
|
|
mkdir -p /scripts
|
|
if [ ! -f /app/www/public/occ ]; then
|
|
cp /config/addons_autoscripts/"$(basename "${BASH_SOURCE}")" /scripts/ && exit 0
|
|
fi
|
|
|
|
echo "Scanning files"
|
|
sudo -u abc php /app/www/public/occ files:scan --all
|
|
echo "File scan completed!"
|
|
```
|
|
|
|
### Change the temp folder to avoid bloating emmc on HA systems (thanks @senna1992)
|
|
|
|
See ; https://github.com/alexbelgium/hassio-addons/discussions/1370
|
|
|
|
### Use mariadb as the main database (Thanks @amaciuc)
|
|
|
|
If you notice the following warning at your first `webui` running:
|
|
|
|
```bash
|
|
Performance warning
|
|
You chose SQLite as database.
|
|
SQLite should only be used for minimal and development instances. For production we recommend a different database backend.
|
|
If you use clients for file syncing, the use of SQLite is highly discouraged.
|
|
```
|
|
|
|
and you want to overcome this, follow the below steps:
|
|
|
|
- 1. Install `mariadb` add-on, configure it with some random infos and start it. It is important to start it successfully in order to be seen by `nextcloud` in the network.
|
|
- 2. Install `nextcloud` add-on (or restart it if you have already installed), watch the logs until you will notice the following `warning`:
|
|
|
|
```bash
|
|
WARNING: MariaDB addon was found! It can't be configured automatically due to the way Nextcloud works, but you can configure it manually when running the web UI for the first time using those values :
|
|
Database user : service
|
|
Database password : Eangohyuchae6aif7saich2nies8xaivaejaNgaev6gi3yohy8ha2aexaetei6oh
|
|
Database name : nextcloud
|
|
Host-name : core-mariadb:3306
|
|
```
|
|
|
|
- 3. Go back at `mariadb` add-on, configure it with above credentials and restart it. Make sure the add-on is creating the `nextcloud` database.
|
|
- 4. Go in the webui and fill all required info. Here you can view an example:
|
|
|
|

|
|
|
|
## Installation
|
|
|
|
The installation of this add-on is pretty straightforward and not different in
|
|
comparison to installing any other Hass.io add-on.
|
|
|
|
1. [Add my Hass.io add-ons repository][repository] to your Hass.io instance.
|
|
1. Install this add-on.
|
|
1. Click the `Save` button to store your configuration.
|
|
1. Start the add-on.
|
|
1. Check the logs of the add-on to see if everything went well.
|
|
1. Go to the webui, where you will create your username, password, and database (if using mariadb, infos are in the log)
|
|
1. Restart the addon, to apply any option that should be applied
|
|
|
|
## HA integration
|
|
|
|
See this component : https://www.home-assistant.io/integrations/nextcloud/
|
|
|
|
[repository]: https://github.com/alexbelgium/hassio-addons
|
|
[elasticsearch-shield]: https://img.shields.io/badge/Elasticsearch-optional-blue.svg?logo=elasticsearch
|
|
continu
|
|
|
|
|