NATVPS.id – Joplin adalah aplikasi pencatatan open-source dengan berbagai fitur dan tampilan yang intuitif. Joplin menyediakan fitur sinkronisasi yang dapat dihubungkan ke berbagai cloud provider, seperti Joplin Cloud dan Microsoft Onedrive. Walaupun begitu, kita dapat menghosting Joplin Server kita sendiri sebagai server sinkronisasi, sekaligus menjaga keamanan catatan yang tersimpan.
Artikel ini menjelaskan cara menghosting Joplin Server dengan Docker dan menyinkronkannya dengan aplikasi Joplin. Artikel ini menggunakan Ubuntu 22.04 sebagai acuan. Untuk OS lain, silahkan menyesuaikan langkah-langkah yang tertera.
Mengingat kita menggunakan NAT, kita perlu menambahkan 2 konfigurasi port forwarding pada panel Virtualizor (atau panel VPS lain sesuai provider), yaitu Domain Forwarding (HTTP & HTTPS) untuk mengakses Joplin Server.
Sebagai contoh, pada artikel ini akan menggunakan domain joplin.mdinata.my.id. Anda bebas mengganti port ini sesuai pilihan Anda. Catat port ini, karena kita akan menggunakannya lagi pada proses deploy.
Kita akan menggunakan Docker dan Docker Compose untuk men-deploy ketiga aplikasi ini.
Pertama, Install curl menggunakan perintah:
apt update && apt install curl -y
Kemudian, jalankan script instalasi otomatis dari Docker dengan memasukkan:
curl -fsSL get.docker.com | sh
Tunggu hingga proses instalasi selesai.
Buat direktori baru dengan nama joplin-server
cd ~/ mkdir joplin-server cd joplin-server
Buat file baru dengan nama docker-compose.yml menggunakan nano:
apt install nano -y nano docker-compose.yaml
Lalu tempelkan konfigurasi Compose berikut:
# Docker Compose untuk deploy Joplin Server di NAT VPS
# https://natvps.id/deploy-joplin-server-nat-vps
# Source: https://hub.docker.com/r/joplin/server (adapted)
services:
db:
image: postgres:13
volumes:
- ./data/postgres:/var/lib/postgresql/data
expose:
- "5432"
restart: always
environment:
- POSTGRES_PASSWORD=password
- POSTGRES_USER=joplin-user
- POSTGRES_DB=joplindb
app:
image: joplin/server:latest
container_name: joplin-server
depends_on:
- db
ports:
- "32510:32510"
restart: always
environment:
- APP_PORT=32510
- APP_BASE_URL=https://joplin.mdinata.my.id
- DB_CLIENT=pg
- POSTGRES_PASSWORD=password
- POSTGRES_DATABASE=joplindb
- POSTGRES_USER=joplin-user
- POSTGRES_PORT=5432
- POSTGRES_HOST=db ports: dan APP_PORT, sesuaikan 32510 dengan port yang Anda inginkan (bebas).APP_BASE_URL, ganti joplin.mdinata.my.id dengan domain dari Joplin Server Anda.Simpan file tersebut dengan menekan Ctrl-X, y, kemudian Enter.
Terakhir, jalankan menggunakan Docker Compose:
docker compose up -d
Tunggu hingga proses deploy selesai.
Agar kita dapat mengakses URL melalui domain seperti cms-tutorial3.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
Buat konfigurasi host baru khusus untuk Joplin Server:
nano /etc/nginx/sites-available/joplin-server
Kemudian tempelkan konfigurasi berikut:
# Konfigurasi NGINX untuk deploy Ghost di NAT VPS
# https://natvps.id/deploy-joplin-server-nat-vps
server {
server_name joplin.mdinata.my.id;
listen 80;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:32519;
}
} Sesuaikan joplin.mdinata.my.id dengan domain Anda, dan 32510 dengan port Joplin Server.
Aktifkan konfigurasi tersebut dengan:
ln -sf /etc/nginx/sites-available/joplin-server /etc/nginx/sites-enabled/joplin-server # Restart NGINX systemctl restart nginx
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
Lalu, generate sertifikat melalui Certbot dengan perintah
certbot --nginx -d joplin.mdinata.my.id
Ganti joplin.mdinata.my.id dengan domain Anda.
Selamat! Domain Anda saat ini dapat diakses melalui koneksi aman HTTPS.
Joplin Server dapat diakses melalui domain yang telah diatur sebelumnya. Contoh: https://joplin.mdinata.my.id.
Kredensial default:
Untuk mulai menggunakan Joplin Server, lakukan konfigurasi sinkronisasi berikut:
Demikianlah artikel ini mengenai langkah-langkah deploy Joplin Server di NAT VPS. Jika bingung atau ragu, jangan sungkan untuk bertanya di grup Telegram @IPv6Indonesia. Terima kasih!
NATVPS.id – Gopeed (Go Speed) adalah aplikasi pengunduh modern bersifat open-source yang yang mendukung berbagai…
NATVPS.id – IPTV (Internet Protocol Television) adalah teknologi yang menyiarkan konten televisi, video, dan siaran…
NATVPS.id – Jellyfin adalah server media open-source yang memungkinkan Anda mengatur, melakukan streaming, dan mengelola…
NATVPS.id – Gitea adalah sebuah layanan hosting Git (pengelola repositori kode) open-source yang dapat di…
NATVPS.id – LibreOffice adalah perangkat lunak perkantoran (office) yang gratis, modern, dan open-source. LibreOffice dapat…
NATVPS.id – Pi-hole adalah software DNS Server yang berfokus pada pemblokiran iklan dan situs trackers.…