Categories: Umum

Install LinkStack di NAT VPS

NATVPS.id – Dewasa ini, personal branding menjadi hal yang cukup penting bagi individual maupun perusahaan. Salah satunya adalah penggunaan profile page (laman profil), seperti Linktree atau Milkshake. Namun, kita dapat menggunakan sebuah alternatif gratis dan open source bernama LinkStack yang dapat di-install di server kita. Dengan demikian, biaya yang dikeluarkan pun dapat lebih murah.

Pada artikel ini kita akan membahas mengenai langkah-langkah instalasi LinkStack di NAT VPS, 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 untuk domain LinkStack.

Sebagai contoh, pada artikel ini akan menggunakan domain link-tutorial.mdinata.my.id sebagai domain profile page. Anda bebas mengganti domain sesuai pilihan Anda. Catat port dan domain ini, karena kita akan menggunakannya lagi pada proses deploy.

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

Install Docker

Kita akan menggunakan Docker dan Docker Compose untuk men-deploy LinkStack.

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.

Deploy LinkStack

Buat direktori baru dengan nama linkstack

cd ~/
mkdir linkstack
cd linkstack

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 LinkStack di NAT VPS
# https://natvps.id/install-linkstack-nat-vps
# Source: https://github.com/linkstackorg/linkstack-docker (adapted)

version: "3.8"

services:

  linkstack:
    hostname: 'linkstack'
    image: 'linkstackorg/linkstack:latest'
    environment:
      TZ: 'Asia/Jakarta'
      SERVER_ADMIN: 'hendra@mdinata.my.id'
      HTTP_SERVER_NAME: 'link-tutorial.mdinata.my.id'
      HTTPS_SERVER_NAME: 'link-tutorial.mdinata.my.id'
      LOG_LEVEL: 'info'
      PHP_MEMORY_LIMIT: '256M'
      UPLOAD_MAX_FILESIZE: '8M'
    volumes:
      - 'linkstack_data:/htdocs'
    ports:
      - '8190:443'
    restart: unless-stopped

volumes:
  linkstack_data:

Pada bagian HTTP_SERVER_NAME dan HTTPS_SERVER_NAME, sesuaikan dengan domain LinkStack Anda.

HTTP_SERVER_NAME: 'link-tutorial.mdinata.my.id'
HTTPS_SERVER_NAME: 'link-tutorial.mdinata.my.id'

Jangan lupa untuk mengganti Email pada SERVER_ADMIN dengan Email pribadi Anda.

SERVER_ADMIN: 'hendra@mdinata.my.id' # Ganti dengan Email Anda

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

Terakhir, Jalankan LinkStacck menggunakan Docker Compose:

docker compose up -d

Tunggu hingga proses deploy selesai.

Konfigurasi NGINX (Reverse Proxy)

Agar kita dapat mengakses URL melalui domain seperti link-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

Buat konfigurasi host baru khusus untuk LinkStack:

nano /etc/nginx/sites-available/linkstack

Kemudian tempelkan konfigurasi berikut:

# Konfigurasi NGINX untuk deploy LinkStack di NAT VPS
# https://natvps.id/install-linkstack-nat-vps

server {
    server_name link-tutorial.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 https://127.0.0.1:8190; # Pastikan pakai HTTPS
    }
}

Pastikan untuk menggunakan HTTPS pada proxy_pass !

Sesuaikan link-tutorial.mdinata.my.id dengan domain LinkStack Anda.

Aktifkan konfigurasi tersebut dengan:

ln -sf /etc/nginx/sites-available/linkstack /etc/nginx/sites-enabled/linkstack

# Restart NGINX
systemctl restart nginx

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

Lalu, generate sertifikat melalui Certbot dengan perintah

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

Ganti link-tutorial.mdinata.my.id dengan domain Anda.

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

Mengakses LinkStack

LinkStack dapat diakses melalui domain Anda sebelumnya. Contoh: https://link-tutorial.mdinata.my.id.

 

Silahkan melakukan konfigurasi lanjutan sesuai keinginan Anda.

Penutup

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

Hendra Manudinata

Recent Posts

Cara Install Gopeed Web Downloader di NAT VPS

NATVPS.id – Gopeed (Go Speed) adalah aplikasi pengunduh modern bersifat open-source yang yang mendukung berbagai…

9 bulan ago

Cara Streaming IPTV dengan ViniPlay + M3U

NATVPS.id – IPTV (Internet Protocol Television) adalah teknologi yang menyiarkan konten televisi, video, dan siaran…

9 bulan ago

Install Jellyfin Media Server di NAT VPS

NATVPS.id – Jellyfin adalah server media open-source yang memungkinkan Anda mengatur, melakukan streaming, dan mengelola…

9 bulan ago

Cara Install Gitea Git Server di NAT VPS

NATVPS.id – Gitea adalah sebuah layanan hosting Git (pengelola repositori kode) open-source yang dapat di…

9 bulan ago

Cara Install LibreOffice via Docker di NAT VPS

NATVPS.id – LibreOffice adalah perangkat lunak perkantoran (office) yang gratis, modern, dan open-source. LibreOffice dapat…

10 bulan ago

Install Pi-Hole + OpenVPN Server di NAT VPS

NATVPS.id – Pi-hole adalah software DNS Server yang berfokus pada pemblokiran iklan dan situs trackers.…

11 bulan ago