-
Source: PiMyLifeUp
NC Admin Manual: Administration_Manual
-
sudo apt update
sudo apt upgrade
-
Install PHP
sudo apt install lsb-release
curl https://packages.sury.org/php/apt.gpg | sudo tee /usr/share/keyrings/suryphp-archive-keyring.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/suryphp-archive-keyring.gpg] https://packages.sury.org/php/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/sury-php.list
sudo apt update
sudo apt upgrade
sudo apt install php8.1-cli
sudo apt install php8.2 php8.2-gd php8.2-sqlite3 php8.2-curl php8.2-zip php8.2-xml php8.2-mbstring php8.2-mysql php8.2-bz2 php8.2-intl php8.2-smbclient php8.2-imap php8.2-gmp php8.2-bcmath libapache2-mod-php8.2
Test
echo "<?php echo 'Hello World';" > test.php
php8.1 test.php
-
Install apache2
sudo apt install apache2
sudo service apache2 restart
-
Install MySQL
MySQL
sudo apt install mariadb-server
sudo mysql_secure_installation
rootpw, y, n, y, y, y, y
sudo mysql -u root -p
CREATE DATABASE nextclouddb;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY '[PASSWORD]';
GRANT ALL PRIVILEGES ON nextclouddb.* TO 'nextclouduser'@'localhost';
FLUSH PRIVILEGES;
quit
sudo apt install php-mysql
-
Setup Nextcloud
cd /var/www/
sudo wget https://download.nextcloud.com/server/releases/latest.tar.bz2
sudo tar -xvf latest.tar.bz2
sudo mkdir -p /var/www/nextcloud/data
sudo chown -R www-data:www-data /var/www/nextcloud/
sudo chmod 750 /var/www/nextcloud/data
-
Configuration
sudo nano /etc/apache2/sites-available/nextcloud.conf
add the following lines
<VirtualHost *:80>
DocumentRoot /var/www/nextcloud/
ServerName shadowpage.duckdns.org
<Directory /var/www/nextcloud/>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>
</VirtualHost>
save (CTRL
+ S
) and exit (CTRL
+ X
)
-
using the file by Apache
sudo a2ensite nextcloud.conf
and restart
sudo systemctl reload apache2
-
Setup Nextcloud user
use your browser
shadowpage.duckdns.org
- enter Username and Password for your admin account
- click "Storage & Datbase"
- click "MySQL/MariaDB"
enter details
- db user: nextclouduser
- password: [PASSWORD]
- set db name: nextclouddb
click "Install"!
-
Move Nextcloud’s data folder
sudo mkdir -p /var/nextcloud
sudo mv -v /var/www/nextcloud/data /var/nextcloud/data
cd /var/www/nextcloud/config
sudo cp -p config.php config.php.bk
sudo nano config.php
change line:
'datadirectory' => '/var/www/nextcloud/data',
to
'datadirectory' => '/var/nextcloud/data',
save (CTRL
+ S
) and exit (CTRL
+ X
)
sudo chown -R www-data:www-data /var/nextcloud/data
-
Max upload size
edit
sudo nano /etc/php/8.0/apache2/php.ini
find
memory_limit =
max_execution_time:
max_input_time:
post_max_size =
upload_max_filesize =
set to
memory_limit = 512M
max_execution_time: 3600
max_input_time: 3600
post_max_size = 2G
upload_max_filesize = 2G
save (CTRL
+ S
) and exit (CTRL
+ X
)
sudo service apache2 restart
nginx:
docs.nextcloud
# set max upload size
client_max_body_size 512M;
fastcgi_buffers 64 4K;
-
SSL
...
-
iOS synchronisieren
Source: docs.nextcloud