Cara Mudah Install Nextcloud di Server Ubuntu

Cara Mudah Install Nextcloud di Ubuntu Server. Bagi kalian yang pernah memakai OneDrive dari Microsoft, atau Google Drive, atau mungkin Dropbox, tentu tidak asing dengan yang namanya cloud storage. Cloud storage sendiri berguna untuk menyimpan file file kita . Saya sendiri memanfaatkan cloud storage untuk membackup file penting untuk berjaga jaga jika terjadi sesuatu di harddisk lokal. Misalnya harddisk tiba-tiba rusak dan tidak bisa diperbaiki, terkena virus atau ransomware, setidaknya file penting kita masih aman di cloud storage.
Bicara cloud storage, jika kita punya vps atau server sendiri, kita bisa menginstall layanan cloud storage tersebut di server. Disini saya akan sharing tentang Nextcloud, layanan cloud storage open source yang bisa kalian install di server milik kalian sendiri.


Di tutorial ini saya akan sharing cara install Nextcloud versi terbaru saat artikel ini dirilis yakni versi 15.0.4 di Ubuntu Server yang menggunakan web server Nginx.

Install Nginx
Pertama kita install terlebih dahulu web servernya, yaitu Nginx.
sudo apt update
sudo apt install nginx
Install MariaDB
Selanjutnya kita install MariaDB.
sudo apt-get install mariadb-server mariadb-client
Untuk selanjutnya kalian bisa ikuti tutorial yang sudah pernah saya share disini :
Buat Database untuk Nextcloud
Kita buat database yang nantinya akan digunakan untuk Nextcloud.
Login ke mariadb dengan perintah
sudo mysql -u root -p
Lalu jalankan command berikut untuk membuat database dengan nama nextcloud.
CREATE DATABASE nextcloud;
Untuk nama databasenya sendiri bebas sebenarnya, namun disini kita buat dengan nama tersebut agar tidak bingung.

lanjut buat user dan beri hak akses penuh ke database nextcloud.
CREATE USER 'usernextcloud'@'localhost' IDENTIFIED BY 'password_user_disini';
GRANT ALL ON nextcloud.* TO 'usernextcloud'@'localhost';
Oke selanjutnya tinggal exit dari MariaDB client.
exit;
Install PHP-FPM
Lanjut install PHP-FPM dan modul yang dibutuhkan
sudo apt install php-fpm php-cli php-mcrypt php-ldap php-zip php-curl php-mbstring php-smbclient php-ldap php-redis php-gd php-xml php-intl php-json php-imagick php-mysql php-xmlrpc php-soap php-apcu

Jika kalian ingin menginstall PHP 7.3, kalian bisa ikuti tutorial berikut:
Konfigurasi Nginx
Selanjutnya kita konfigurasi serverblock Nginx untuk Nextcloud.
sudo nano /etc/nginx/sites-available/nextcloud

Berikut adalah contoh serverblock yang bisa digunakan:
server {
    listen 80;
    listen [::]:80;
    root /var/www/html/nextcloud;
    index  index.php index.html index.htm;
    server_name  nextcloud.linuxsec.org;

    location / {
        rewrite ^ /index.php$uri;
    }

    location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
        return 404;
    }
    location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
        return 404;
    }

    location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+)\.php(?:$|/) {
        fastcgi_split_path_info ^(.+\.php)(/.*)$;
        fastcgi_pass      unix:/var/run/php/php7.2-fpm.sock;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_intercept_errors on;
        fastcgi_request_buffering off;
    }


    location ~ ^/(?:updater|ocs-provider)(?:$|/) {
        try_files $uri $uri/ =404;
        index index.php;
    }

    location ~* \.(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg)$ {
        try_files $uri /index.php$uri$is_args$args;
        access_log off;
    }

}
Sesuaikan sendiri versi PHP-FPM, root path dan juga servername nya. Jangan lupa enable degan perintah
sudo ln -s /etc/nginx/sites-available/nextcloud /etc/nginx/sites-enabled/

Download Nextcloud
Selanjutnya kita download dan ekstrak Nextcloud di root path server yang telah ditentukan. Dalam contoh ini berarti kita ekstrak di /var/www/nextcloud.
cd /tmp && https://download.nextcloud.com/server/releases/nextcloud-15.0.4.zip
unzip nextcloud-15.0.4.zip
sudo mv nextcloud/* /var/www/html/nextcloud/
sudo chown -R www-data:www-data /var/www/html/nextcloud/
sudo chmod -R 755 /var/www/html/nextcloud/

Oke sekarang masuk ke tahap akhir.

Kita restart Nginx terlebih dahulu dengan perintah
sudo service nginx restart

Selanjutnya kita akses domain tempat Nextcloud diinstall, dalam tutorial ini adalah
nextcloud.linuxsec.org

Kalian akan dibawa ke laman setup dimana kalian harus memasukkan user dan password yang ingin kalian gunakan, serta kredensial database yang sudah kalian atur di langkah diatas. Sama seperti saat install WordPress.

Jika sudah diisi semua dengan benar, tinggal klik next saja

Selamat. Nextcloud sudah bisa digunakan.

Untuk memasang SSL Lets Encrypt di Nextcloud, kalian bisa ikuti tutorial berikut:

Sekian tutorial kali ini, semoga bermanfaat. Jika ada yang ingin ditanyakan silahkan komentar.