Bagaimana Install Nextcloud di VPS

Nextcloud ialah platform produktiviti Sumber Terbuka yang popular di kalangan komuniti self hosting.

Sila rujuk blog tutorial Contabo untuk maklumat terperinci bagaimana untuk install Nextcloud di VPS anda.

Berikut adala senarai command yang dapat saya ringkaskan untuk rujukan semua.

Update Server linux anda (Debian 11) dan install program yang diperlukan.

apt update && apt upgrade –y
apt install apache2 unzip wget curl mariadb-client mariadb-server nano

Tambah repository PHP8.0 dan install php modules.

apt-get install ca-certificates apt-transport-https software-properties-common -y
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/sury-php.list
apt install gnupg gnupg2 gnupg1 -y
wget -qO - https://packages.sury.org/php/apt.gpg | apt-key add -
apt update && apt upgrade -y

apt install php8.0 -y
apt install libapache2-mod-php8.0 php8.0-{zip,xml,mbstring,gd,curl,imagick,intl,bcmath,gmp,cli,mysql,apcu,redis}

Modifikasi php.ini menggunakan nano command

nano /etc/php/8.0/apache2/php.ini

tukar parameter seperti di bawah :

memory_limit = 1024M
upload_max_filesize = 16G 
post_max_size = 16G 
date.timezone = Asia/Kuala_Lumpur

[CTRL+W] = command cari [CTRL+O] = command simpan [CTRL+X] = command exit

Setup database menggunakan MariaDB dan anda perlukan root password.

mysql -u root -p
create database nextcloud;
create user 'nextcloud'@'localhost' identified by 'PASSWORD';
grant all privileges on nextcloud.* to 'nextcloud'@'localhost';
flush privileges;
exit;

tukarkan PASSWORD dengan password anda. Muat turun file Nextcloud anda dari server, extract dan pindah ke folder yang betul.

cd /tmp && wget https://download.nextcloud.com/server/releases/latest.zip
unzip latest.zip
rm latest.zip
mv nextcloud /var/www

Configure Apache2 dan setting nextcloud.conf

a2enmod rewrite headers env dir mime

Menggunakan nano command untuk setting reverse-proxy.

nano /etc/apache2/sites-available/nextcloud.conf

maksukkan maklumat nextcloud.conf dan tukarkan ServerAdmin < YourEmail > dan ServerName < Your(sub)Domain >

<VirtualHost *:80> 
     ServerAdmin <YourEmail> 
     DocumentRoot /var/www/nextcloud/  
     ServerName <Your(sub)Domain> 
     Alias /nextcloud "/var/www/nextcloud/" 

     <Directory /var/www/nextcloud/> 
        Options +FollowSymlinks 
        AllowOverride All 
        Require all granted 

          <IfModule mod_dav.c> 
            Dav off 
          </IfModule> 

        SetEnv HOME /var/www/nextcloud 
        SetEnv HTTP_HOME /var/www/nextcloud 
     </Directory>  

     ErrorLog ${APACHE_LOG_DIR}/error.log 
     CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost>

Tambah data folder (optional) dan set permision.

a2ensite nextcloud.conf
systemctl restart apache2
chown -R www-data:www-data /var/www/nextcloud
chmod -R 755 /var/www/nextcloud

Install SSL Certificate dengan menggunakan Certbot

apt install certbot python3-certbot-apache -y
certbot --apache

Seterusnya anda boleh teruskan installation di brower anda dengan menaip subdomain yang telah anda setting sebentar tadi serta isikan ruangan seperti berikut.

nextcloud

Selamat Mencuba dan semoga maju jaya!!

Kredit: Contabo Blog