Install ownCloud di NAT VPS sebagai Cloud Pribadi


NATVPS.id – ownCloud adalah platform open-source untuk berbagi dan menyimpan file secara mandiri di server pribadi atau organisasi. Dengan ownCloud, pengguna dapat mengelola dokumen, gambar, dan data lainnya melalui antarmuka web yang aman, serta sinkronisasi ke berbagai perangkat seperti desktop dan mobile. ownCloud menjadi alternatif populer terhadap layanan cloud komersial karena memberikan kontrol penuh atas data, fleksibilitas, dan privasi yang lebih terjamin. ownCloud juga dapat menjadi alternatif dari Nextcloud.

Artikel ini membahas mengenai langkah-langkah install ownCloud di NAT VPS menggunakan Docker, beserta konfigurasi NGINX untuk reverse-proxy. Artikel ini menggunakan Ubuntu 22.04 sebagai acuan, namun Anda dapat menggunakan distribusi lain seperti Debian dan CentOS. Pastikan OS yang digunakan mendukung Docker.

Konfigurasi Port Forwarding

Mengingat kita menggunakan NAT, kita perlu menambahkan 2 konfigurasi port forwarding pada panel Virtualizor (atau panel VPS lain sesuai provider), yaitu port forwarding HTTP dan HTTPS sebagai domain ownCloud.

Sebagai contoh, pada artikel ini akan menggunakan domain awan.tutorial.mdinata.my.id untuk mengakses ownCloud. Anda bebas mengganti domain sesuai pilihan Anda. Catat port dan domain ini, karena kita akan menggunakannya lagi pada proses deploy.

blank

Jangan lupa untuk menambahkan DNS record yang menuju ke IP publik NAT VPS Anda, seperti ini:

blank

Install Docker

Kita akan menggunakan Docker dan Docker Compose untuk deploy Beszel.

Pertama, Install curl menggunakan perintah:

apt update && apt install curl -y

blank

Kemudian, jalankan script instalasi otomatis dari Docker dengan memasukkan:

curl -fsSL get.docker.com | sh

Tunggu hingga proses instalasi selesai.

blank

Deploy ownCloud

Buat direktori baru:

mkdir owncloud
 cd owncloud/

blank

Lalu, buat file docker-compose.yml menggunakan nano:

apt install nano -y # jika belum
 nano docker-compose.yml

Kemudian, tempelkan konfigurasi berikut:

# # Reference: 
 version: "3"
 
 volumes:
 files:
 driver: local
 mysql:
 driver: local
 redis:
 driver: local
 
 services:
 owncloud:
 image: owncloud/server:${OWNCLOUD_VERSION:-latest}
 container_name: owncloud_server
 restart: always
 ports:
 - ${HTTP_PORT}:8080
 depends_on:
 - mariadb
 - redis
 environment:
 - OWNCLOUD_DOMAIN=${OWNCLOUD_DOMAIN}
 - OWNCLOUD_TRUSTED_DOMAINS=${OWNCLOUD_TRUSTED_DOMAINS}
 - OWNCLOUD_DB_TYPE=mysql
 - OWNCLOUD_DB_NAME=owncloud
 - OWNCLOUD_DB_USERNAME=owncloud
 - OWNCLOUD_DB_PASSWORD=owncloud
 - OWNCLOUD_DB_HOST=mariadb
 - OWNCLOUD_ADMIN_USERNAME=${ADMIN_USERNAME}
 - OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD}
 - OWNCLOUD_MYSQL_UTF8MB4=true
 - OWNCLOUD_REDIS_ENABLED=true
 - OWNCLOUD_REDIS_HOST=redis
 healthcheck:
 test: ["CMD", "/usr/bin/healthcheck"]
 interval: 30s
 timeout: 10s
 retries: 5
 volumes:
 - files:/mnt/data
 
 mariadb:
 image: mariadb:10.11 # minimum required ownCloud version is 10.9
 container_name: owncloud_mariadb
 restart: always
 environment:
 - MYSQL_ROOT_PASSWORD=owncloud
 - MYSQL_USER=owncloud
 - MYSQL_PASSWORD=owncloud
 - MYSQL_DATABASE=owncloud
 - MARIADB_AUTO_UPGRADE=1
 command: ["--max-allowed-packet=128M", "--innodb-log-file-size=64M"]
 healthcheck:
 test: ["CMD", "mysqladmin", "ping", "-u", "root", "--password=owncloud"]
 interval: 10s
 timeout: 5s
 retries: 5
 volumes:
 - mysql:/var/lib/mysql
 
 redis:
 image: redis:6
 container_name: owncloud_redis
 restart: always
 command: ["--databases", "1"]
 healthcheck:
 test: ["CMD", "redis-cli", "ping"]
 interval: 10s
 timeout: 5s
 retries: 5
 volumes:
 - redis:/data

blank

Simpan file tersebut dengan Ctrl-X, y, kemudian Enter.

Selanjutnya, buat file .env yang berisi konfigurasi ownCloud:

nano .env
OWNCLOUD_VERSION="" # Kosongkan jika ingin menggunakan versi terbaru ownCloud
 OWNCLOUD_DOMAIN=awan.tutorial.mdinata.my.id
 OWNCLOUD_TRUSTED_DOMAINS=localhost, awan.tutorial.mdinata.my.id
 ADMIN_USERNAME=admin
 ADMIN_PASSWORD=admin
 HTTP_PORT=8080
  • OWNCLOUD_VERSION: Versi ownCloud yang ingin digunakan. Kosongkan jika ingin selalu menggunakan versi terbaru
  • OWNCLOUD_DOMAIN: Isi dengan domain ownCloud yang Anda ingin gunakan
  • OWNCLOUD_TRUSTED_DOMAINS: Di akhir, tambahkan juga dengan domain ownCloud Anda
  • ADMIN_USERNAME: Username admin
  • ADMIN_PASSWORD: Password admin

blank

Simpan file tersebut.

Terakhir, jalankan ownCloud:

docker compose up -d

blank

Tunggu hingga proses deploy selesai.

blank

Konfigurasi NGINX (Reverse Proxy)

Agar kita dapat mengakses URL melalui domain seperti monitor.tutorial.mdinata.my.id, kita dapat menggunakan reverse proxy seperti NGINX.

Pertama, install NGINX melalui perintah:

# Hapus Apache2 dan pendukungnya (biasanya terpasang secara bawaan di VPS OpenVZ)
 apt purge apache2* -y
 
 # Install NGINX
 apt install nginx -y

blank

Buat konfigurasi host baru khusus untuk ownCloud:

nano /etc/nginx/sites-available/owncloud

Kemudian tempelkan konfigurasi berikut:

server {
 listen 80;
 server_name awan.tutorial.mdinata.my.id;
 client_max_body_size 10M;
 
 location / {
 # check proxy_set_header Connection '';
 proxy_http_version 1.1;
 proxy_read_timeout 360s;
 
 proxy_set_header Host $host;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header X-Forwarded-Proto $scheme;
 
 proxy_pass }
 }

Sesuaikan awan.tutorial.mdinata.my.id dengan domain Anda.

blank

Aktifkan konfigurasi tersebut dengan:

ln -sf /etc/nginx/sites-available/owncloud /etc/nginx/sites-enabled/owncloud
 
 # Restart NGINX
 systemctl restart nginx

blank

Generate Sertifikat SSL (Let’s Encrypt)

Agar domain kita dapat diakses melalui HTTPS, kita perlu membuat sertifikat SSL. Kita dapat menggunakan sertifikat SSL gratis dari Let’s Encrypt melalui Certbot.

Install Certbot dan plugin NGINX nya menggunakan perintah:

apt install python3-certbot python3-certbot-nginx

blank

Lalu, generate sertifikat melalui Certbot dengan perintah

certbot --nginx -d awan.tutorial.mdinata.my.id

Ganti awan.tutorial.mdinata.my.id dengan domain Anda.

blank

Selamat! Domain Anda saat ini dapat diakses melalui koneksi aman HTTPS.

Login ownCloud

Login ownCloud melalui domain Anda, dengan username & password sesuai dengan konfigurasi sebelumnya.

blank

Â

blank

Penutup

Demikianlah artikel ini mengenai langkah-langkah install ownCloud di NAT VPS. Jika bingung atau ragu, jangan sungkan untuk bertanya di grup Telegram @IPv6Indonesia. Terima kasih!



Hiburan

Berita Olahraga

News

Berita Terkini

Berita Terbaru

Berita Teknologi

Seputar Teknologi

Drama Korea

Resep Masakan

Pendidikan

Berita Terbaru

Berita Terbaru

Berita Terbaru

Lifestyle

Leave a Reply

Your email address will not be published. Required fields are marked *