Andika Dwi Prasetya
systems
2026-01-14
3 min read

Membangun Home Lab: Mengubah Laptop Bekas Menjadi Server Eksperimen

Pengalaman praktis menginstal Ubuntu Server pada ThinkPad lama, konfigurasi Docker, reverse proxy, dan akses jarak jauh aman via Tailscale.

LinuxDockerNetworkingHomeLabSelf-hostingTailscale

Membangun Home Lab: Mengubah Laptop Bekas Menjadi Server Eksperimen

Bagi seorang backend developer, ada pemahaman yang sulit didapat hanya dengan menyewa VPS di cloud: pemahaman tentang apa yang sebenarnya terjadi di layer sistem operasi, jaringan fisik, dan daemon Linux.

Untuk mendapatkan intuisi tersebut tanpa mengeluarkan biaya sewa server bulanan yang mahal, saya memutuskan mengubah laptop lama yang sudah tidak terpakai (Lenovo ThinkPad dengan prosesor Intel Core i5, RAM 8GB, dan SSD 256GB) menjadi sebuah home server tanpa layar (headless server).


1. Menyiapkan Hardware & Sistem Operasi

Langkah pertama adalah menghapus seluruh instalasi desktop dan menginstal Ubuntu Server 24.04 LTS (Headless).

Karena laptop memiliki baterai bawaan, laptop sebenarnya berfungsi mirip mini-server dengan Uninterruptible Power Supply (UPS) darurat jika listrik rumah padam sejenak. Namun, ada satu tantangan fisik: ketika layar laptop ditutup, sistem operasi secara default akan masuk ke mode Sleep/Suspend.

Trik Power Management Linux

Agar server tetap menyala saat layar laptop ditutup rapat di sudut meja, kita perlu mengedit konfigurasi systemd login daemon di /etc/systemd/logind.conf:

# Buka file konfigurasi
sudo nano /etc/systemd/logind.conf

# Ubah atau tambahkan baris berikut:
HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore

# Restart service systemd logind
sudo systemctl restart systemd-logind

Dengan konfigurasi di atas, laptop dapat ditutup dan diletakkan rapi di rak tanpa pernah mematikan proses backend yang sedang berjalan.


2. Arsitektur Kontainer dengan Docker Compose

Seluruh layanan rekayasa di home lab dijalankan menggunakan Docker Compose. Ini memastikan seluruh konfigurasi layanan terdokumentasi rapi (Infrastructure-as-Code) dan mudah dipulihkan jika sistem perlu di-reinstall.

Beberapa kontainer inti yang selalu aktif:

  • PostgreSQL 16: Database relasional utama untuk eksperimen skema FHIR dan simulasi kueri kompleks.
  • Redis: In-memory caching dan pengujian antrean tugas (task queues).
  • Caddy / Nginx: Web server reverse-proxy untuk mengelola domain internal seperti postgres.lab.local atau api.lab.local dengan sertifikat SSL lokal otomatis.

3. Akses Jarak Jauh Aman Menggunakan Tailscale VPN

Tantangan terbesar home lab rumahan adalah IP publik yang bersifat dinamis (CGNAT) dari penyedia internet (ISP), sehingga server tidak bisa diakses dari luar rumah tanpa port forwarding berbahaya yang membuka celah keamanan.

Solusi modern yang sangat elegan adalah menggunakan Tailscale (WireGuard-based Mesh VPN):

# Instal Tailscale di server Ubuntu
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up

Dengan Tailscale:

  1. Server mendapatkan alamat IP privat yang statis dan aman (misalnya 100.x.y.z).
  2. Dari laptop kampus atau smartphone di luar rumah, saya dapat melakukan ssh andika@100.x.y.z dengan enkripsi end-to-end tanpa perlu membuka port router rumah ke internet publik.

4. Kesimpulan & Manfaat bagi Perkembangan Diri

Mengelola home lab sendiri melatih intuisi penting yang tidak diajarkan di tutorial framework:

  • Membaca dan menganalisis log sistem menggunakan journalctl dan docker logs.
  • Memahami alokasi memori Linux (swap space, oom-killer, dan buffer cache).
  • Memahami dasar-dasar jaringan komputer (resolusi DNS, subnet routing, dan firewall ufw).

Home lab adalah tempat terbaik untuk "berani merusak dan belajar memperbaikinya kembali".

// Profil Penulis & Konteks Rekayasa
Andika Dwi Prasetya

Mahasiswa Teknologi Rekayasa Perangkat Lunak di Universitas Gadjah Mada. Menulis tentang rekayasa sistem backend praktis, interoperabilitas data kesehatan, dan implementasi AI lokal.