NextCloud: Difference between revisions
No edit summary |
No edit summary |
||
Line 19: | Line 19: | ||
<p>NextCloud runs on Apache2 and uses MariaDB, so following packages have to be installed:</p> | <p>NextCloud runs on Apache2 and uses MariaDB, so following packages have to be installed:</p> | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
apt-get install apache2 libapache2-mod-php mariadb-server php-xml php-cli php-cgi php-mysql php-mbstring php-gd php-curl php-zip wget unzip | apt-get install apache2 libapache2-mod-php mariadb-server php-xml php-cli php-cgi php-mysql php-mbstring php-gd php-curl php-zip php-intl wget unzip | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<p>''php.ini'' has to be edited for recommended settings:</p> | <p>''php.ini'' has to be edited for recommended settings:</p> |
Revision as of 16:36, 20 February 2021
IP: | 192.168.88.10 |
---|---|
MAC: | B2:62:86:48:66:66 |
Domain: | cloud.flowerhouse.at |
OS: | Debian Buster |
---|---|
RAM: | 1024MB |
Cores: | 2 |
Privileged: | Yes |
The NextCloud-LXC is reachable under 192.168.88.10
which is located in the ServerVLAN.
The subdomain is cloud.flowerhouse.at which is handled by the ReverseProxy.
Basic Setup
Apache, MariaDB and PHP
For the NextCloud installation to work in an Container, it must be privileged, otherwise it is impossible to mount an external storage
NextCloud runs on Apache2 and uses MariaDB, so following packages have to be installed:
apt-get install apache2 libapache2-mod-php mariadb-server php-xml php-cli php-cgi php-mysql php-mbstring php-gd php-curl php-zip php-intl wget unzip
php.ini has to be edited for recommended settings:
nano /etc/php/7.3/apache2/php.ini
Change the following settings:
memory_limit = 1024M
upload_max_filesize = 1000M
post_max_size = 1000M
; 3600s = 1h
max_execution_time = 3600
date.timezone = Europe/Berlin
Start and enable all services:
systemctl start apache2
systemctl start mariadb
systemctl enable apache2
systemctl enable mariadb
Configure Database
Create database and user for NextCloud and use random generated password:
mysql -u root -p
CREATE DATABASE nextclouddb;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'RNGPASSWORD';
GRANT ALL ON nextclouddb.* TO 'nextclouduser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Download NextCloud
Download latest NextCloud-Version:
//installation-path: /var/www/nextcloud //data-Path: /home/data
//Install missing php-package apt install php-intl
//Add trusted domain nano /var/www/nextcloud/config/config.php
//Zur Datei hinzufügen 'trusted_domains' =>
array ( 0 => '192.168.88.10', 1 => 'cloud.flowerhouse.at', ),
//Neu laden systemctl restart apache2
//Bug-FIX https://github.com/nextcloud/server/pull/23606/files
Install required packages for nfs-sare
apt install nfs-common
apt install nfs4-acl-tools
Mount the nfs-share (NAS) to the data folder where all the user files will be stored
mount -t nfs 192.168.88.5:/mnt/zpool1/NextCloud /home/data/
192.168.88.5:/mnt/zpool1/NextCloud /home/data/ nfs defaults 0 0
Re-scan all files after mounting to update file database
sudo -u www-data php /var/www/nextcloud/occ files:scan --all
Additional configuration
MaxUploadSize
client_max_body_size 100M; in reverse-proxy.conf und nginx.conf wichtig. MaxFileSize = Useable RAM https://github.com/nextcloud/docker/blob/master/.examples/docker-compose/with-nginx-proxy/mariadb-cron-redis/fpm/web/nginx.conf#L76
//NextCloud Reverse Proxy config https://help.nextcloud.com/t/connection-wizard-is-looping-between-log-in-and-grant-access/46809/4