↓ Lewati ke konten utama

Learning Path Home Server: Perjalanan Otodidak dari STB CasaOS sampai Proxmox

Zarvelion Zynji
Penulis
Zarvelion Zynji
Tech enthusiasts (self-proclaimed). Gaming addict (diagnosed). Anime simp (no regrets). I turn my hyperfixations into contentβ€”welcome to the chaos.
Daftar isi

Ini bukan tutorial step-by-step, tapi cerita learning path saya β€” perjalanan otodidak belajar home server/self-hosted dari benar-benar nol. Kalau kamu baru mau mulai dan masih bingung “harus belajar apa dulu sih?”, semoga tulisan ini bisa jadi peta jalannya. Santai aja, ini cuma opini + pengalaman pribadi, bukan pakem.

Kalau kamu belum tahu sama sekali apa itu home server, mending baca dulu artikel sebelumnya biar konteksnya nyambung:


πŸ–₯️ Fase 0 β€” STB Bekas 2GB RAM + CasaOS: Kenalan Dulu
#

Semuanya bermula dari STB HG680P bekas dengan RAM cuma 2GB. Waktu itu saya install CasaOS dan… jujur aja, saya nggak ngerti apa-apa. Nggak ngerti docker, nggak ngerti cara share file (NAS), nggak ngerti apa pun. Saya cuma klik-klik install app dari dashboard web-nya.

Yang menarik: tanpa sadar, app yang saya install itu sebenarnya jalan di dalam Docker. Saya belajar cara install app lewat UI, tapi belum paham apa yang terjadi di belakang layar. Buat penyimpanan, saya pakai flashdisk 32GB β€” cukup buat data-data kecil doang.

Apa yang dipelajari di fase ini:

  • Cara kerja app store ala CasaOS (yang ternyata bungkus dari Docker)
  • Konsep dasar storage: flashdisk dipasang, di-share, dipakai
  • Bahwa hardware murah pun bisa jadi server

πŸ’‘ Tips fase 0
#

Fase ini penting bukan karena teknologinya, tapi karena membuktikan bahwa kamu bisa. Begitu ada server yang hidup 24/7 di rumah, motivasi buat belajar naik sendiri.

πŸ’» Fase 1 β€” Laptop Kentang + Debian: Masa Belajar Beneran
#

Ternyata ada laptop bekas Intel Celeron N4000, RAM 4GB. Laptop kentang banget, makanya saya pilih install OS yang sangat ringan dan minim bloatware: Debian. Di sinilah semuanya mulai “klik”.

Yang saya pelajari di fase ini adalah dua pilar utama β€” basic Linux dan Docker β€” karena menurut saya ini basic dari segala basic buat belajar home server/self-hosted. Kalau dua ini udah nempel, yang lain tinggal ikut.

🐧 Basic Linux: Pondasi Segalanya
#

Ini bagian yang paling penting. Nggak perlu jago dulu, cukup paham hal-hal berikut:

1. SSH β€” akses server tanpa GUI

Server kan nggak ada layarnya, jadi kita masuk lewat command line dari laptop:

sudo apt install openssh-server
sudo systemctl enable --now ssh

Lalu dari laptop: ssh namakamu@ip-server. Sekali bisa ini, dunia baru kebuka. Buat yang masih nggak tahan liat terminal doang, bisa pasang Cockpit biar ada dashboard GUI dari browser.

2. User & permission β€” siapa boleh ngapa-ngapain

Linux itu tegas soal ini. Belajar yang dasar:

  • adduser namauser β€” bikin user baru
  • usermod -aG sudo namauser β€” kasih akses admin (sudo)
  • ls -l β€” liat permission file (rwxr-xr-x dst.)
  • chmod 755 file β€” ubah permission
  • chown user:group file β€” ubah pemilik
Jangan biasakan login sebagai root langsung buat kegiatan sehari-hari. Pakai user biasa + sudo. Kebiasaan ini nanti menyelamatkanmu di Proxmox, di server produksi, di mana pun.

3. Network β€” biar server ketemu & ketemu

  • ip addr β€” liat IP server
  • ip link β€” liat interface (eth0, wlan0, dll.)
  • Set static IP biar alamat server nggak berubah-ubah tiap restart (ini krusial kalau mau akses dari luar atau pasang reverse proxy)
  • Kalau mau ukur kecepatan LAN beneran, coba iperf3

4. Storage β€” handle harddisk & fstab

5. File management β€” cd, ls, cp, mv, rm, dan editor nano (paling ramah pemula) atau vim (kalau sudah nekat wkwk).

πŸ’‘ Tips fase basic linux
#

  • Biasakan baca man β€” man ls, man chmod, dst. Dokumentasi selalu ada di server-mu sendiri.
  • Bikin alias untuk perintah yang sering dipakai: alias up="sudo apt update && sudo apt upgrade".
  • Catat semua yang kamu ubah. Percayalah, satu bulan lagi kamu nggak akan ingat kenapa nginx.conf kamu beda dari bawaan.

πŸ“ SMB β€” NAS ala Rumahan
#

Setelah bisa SSH dan paham file, lanjut belajar SMB buat file sharing/NAS. Alasanku pilih SMB: ringan, native di Windows, dan bisa diakses dari smartphone juga. Nggak perlu bayar Google Drive, datanya ada di rumah sendiri.

Ada artikel yang sangat relate sama fase ini soal pendekatan NAS hemat:

Ringkas ceritanya: kadang solusi sederhana justru lebih awet daripada yang fiturnya segambreng.

🐳 Docker & Docker Compose β€” Game Changer
#

Ini yang bikin hidup jauh lebih mudah. Konsepnya: app dibungkus dalam kontainer yang isinya lengkap (app + dependensi), jadi tinggal jalan, nggak perlu ribet install dependensi satu-satu di sistem.

Perintah dasar yang wajib hafal:

docker ps                    # liat kontainer yang jalan
docker ps -a                 # liat semua termasuk yang mati
docker stop namakontainer    # stop
docker start namakontainer   # start lagi
docker logs -f namakontainer # liat log (penyelamat hidup)
docker exec -it namakontainer bash  # masuk ke dalam kontainer

Tapi yang beneran game changer adalah Docker Compose: semua konfigurasi ditulis di satu file docker-compose.yml, tinggal docker compose up -d dan app jalan. Mau pindah server? Tinggal salin file-nya. Ini yang bikin saya berani install app sampai belasan.

Contoh app yang saya tulis pakai compose + Portainer: JDownloader2 dan FileFlows.

πŸ’‘ Tips fase docker
#

  • Selalu kasih nama kontainer (--name atau container_name:) biar gampang di-manage.
  • Pakai volume buat data, jangan simpan data di dalam kontainer β€” kontainer itu “sementara”, volume itu “awet”.
  • Set restart policy: restart: unless-stopped biar app ikut nyala otomatis pas server reboot.
  • Jangan pernah expose docker.sock ke kontainer yang nggak kamu percaya 100%. Itu setara kasih akses root ke server.

🌐 VPN β€” Akses dari Luar Jaringan
#

Poin menarik di perjalananku: ISP saya pakai CGNAT dan blokir Tailscale. WireGuard juga nggak bisa karena nggak punya IP publik. Solusinya? Netbird β€” gratisan, banyak fitur, dan tembus CGNAT dengan mulus.

Kalau ISP-mu normal (punya IP publik), Tailscale atau WireGuard bisa jadi pilihan. Intinya: jangan langsung buka port ke internet sebelum paham risikonya. VPN dulu, port forwarding belakangan (kalau perlu).

🌐 Fase 2 β€” Reverse Proxy: Traefik
#

Setelah app makin banyak, akses mulai berantakan: tiap app beda port, nggak ada SSL, dashboard tiap app login sendiri-sendiri. Solusinya reverse proxy β€” satu pintu masuk, routing berdasarkan subdomain, plus SSL otomatis.

Saya pakai Traefik, dan sudah saya tulis lengkap di sini:

Yang saya dapat dari fase ini:

  • SSL gratis (Let’s Encrypt) otomatis, bahkan tanpa buka port 80 (pakai DNS-01 Cloudflare) β€” cocok banget buat yang kena CGNAT seperti saya
  • Satu pintu masuk: app1.domain.com, app2.domain.com, dst. β€” nggak perlu hafal port
  • Bonus keren: scale-to-zero pakai Sablier + Traefik biar kontainer yang jarang dipakai mati otomatis dan hemat RAM

🧩 Fase 3 β€” Upgrade Hardware & Migrasi ke Proxmox
#

Hampir satu tahun, app yang keinstall makin banyak dan hardware lama (4GB RAM) mulai kewalahan. Waktunya upgrade: beli hardware baru β€” Intel Core i3-6100, RAM 16GB. Masih 2 core sih, tapi cukup capable buat banyak aplikasi.

Sekalian, saya migrasi kedua hardware ke Proxmox VE. Kenapa? Dua alasan utama:

  1. Community scripts β€” install app/LXC/VM jadi jauh lebih gampang: tinggal pilih script dari community-scripts.org, jalan, selesai.
  2. Proxmox Backup Server (PBS) β€” backup jadi jauh lebih mudah dan terpusat.

Karena sudah belajar Debian (CLI, user, network, fstab) dan Docker (konsep kontainerisasi), Proxmox yang udah ada GUI + script bantuan jadi terasa jauh lebih mudah. Tinggal belajar istilah dan setting baru.

🧠 Konsep kunci yang perlu dipahami di Proxmox
#

Konsep Penjelasan singkat
VM (Virtual Machine) Virtualisasi penuh β€” punya kernel sendiri. Lebih berat, tapi isolasi paling kuat.
LXC (Container) Mirip Docker, share kernel host. Ringan, cocok buat app homelab.
Storage pool Tempat simpan disk/ISO (local, local-lvm, NFS, dll.).
Template/ISO Image dasar buat bikin VM/LXC baru.
Snapshot Foto kondisi VM/LXC β€” bisa balik kalau ada yang rusak.
Backup (PBS) Backup terjadwal ke server backup terpisah.

πŸ’‘ Tips fase proxmox
#

  • Jangan lompat langsung ke Proxmox kalau belum paham Linux. Banyak yang menyarankan pemula langsung Proxmox, tapi menurutku itu malah bikin pusing β€” kamu bakal belajar dua hal sekaligus (virtualisasi + linux). Satu-satu dulu.
  • Pasang PBS di hardware terpisah kalau bisa. Backup yang disimpan di server yang sama itu setengah backup.
  • Manfaatkan snapshot sebelum update β€” kalau update bikin rusak, tinggal rollback.
  • Buat naming convention yang rapi buat VM/LXC-mu (lxc-arr, vm-gaming, dst.) biar nggak bingung pas jumlahnya nambah.

πŸ’‘ Tips & Trik Umum (Belajar Otodidak)
#

Ini yang menurutku paling berharga dari semua fase di atas:

  1. Belajar sambil bikin. Jangan cuma baca dokumentasi β€” install, rusakkan, perbaiki. Error adalah guru terbaik.
  2. Dokumentasikan semuanya. Simpan catatan config, perintah yang dipakai, dan keputusan yang diambil. Blog ini lahir dari kebiasaan itu.
  3. Backup config sebelum utak-atik. File config itu kecil, tapi nilainya besar. cp file file.bak aja cukup buat mulai.
  4. Server 24/7 itu bayar listrik. Kalau mau hemat daya, cek PowerTOP & hd-idle.
  5. Jangan expose semua ke internet. VPN buat akses pribadi, reverse proxy + SSL buat yang memang publik.
  6. Pakai .env buat rahasia (API key, password) β€” jangan hardcode di file compose atau config.
  7. Satu masalah, satu pencarian. Belajar otodidak itu wajar bingung, tapi jangan menyerah di error pertama β€” cek log dulu (docker logs, journalctl -xe), baru googling.

❓ FAQ
#

Harus bisa Linux dulu sebelum belajar Proxmox? Nggak wajib, tapi sangat membantu. Pengalamanku: karena udah paham CLI, user/permission, dan konsep kontainer dari Docker, belajar Proxmox terasa jauh lebih cepat. Kalau langsung Proxmox dari nol, kamu belajar dua hal sekaligus dan itu berat.

Hardware minimum buat mulai itu apa? STB bekas 2GB RAM aja cukup buat mulai (lihat Fase 0 πŸ˜„). Mau lebih nyaman? Laptop bekas 4GB + Debian sudah sangat layak. Jangan beli server mahal sebelum butuh.

ISP-ku CGNAT, gimana cara akses server dari luar? Pakai mesh VPN seperti Netbird/Tailscale, atau Cloudflare Tunnel. Hindari langsung port forwarding β€” itu nggak akan tembus CGNAT dan malah bahaya.

Bedanya Docker, LXC, dan VM itu apa? Docker = kontainer aplikasi (paling ringan, jalan di atas OS). LXC = kontainer sistem (punya user-space sendiri, share kernel host). VM = virtualisasi penuh (punya kernel sendiri, paling berat tapi paling terisolasi). Pakai sesuai kebutuhan.

Kapan harus upgrade ke Proxmox? Saat hardware mulai penuh, kamu punya lebih dari satu server, atau butuh isolasi + backup yang rapi. Kalau baru satu server dan masih happy, nggak wajib pindah.

Belajar otodidak mulai dari mana? Mulai dari hal yang kamu pakai sehari-hari: bikin NAS dulu, install app favoritmu, baru ngembang. Dokumentasi resmi (Debian, Docker, Proxmox wiki) + YouTube + blog seperti ini cukup buat jalan.


πŸ› οΈ Troubleshooting Cepat
#

Gejala Kemungkinan penyebab Solusi
SSH connection refused sshd belum jalan atau port beda sudo systemctl status ssh, cek ss -tlnp
Permission denied saat akses file Permission/pemilik salah ls -l, lalu chmod/chown yang benar
Mount hilang setelah reboot Belum ditulis di fstab Tambahkan entri di /etc/fstab, tes dengan mount -a
Kontainer restart terus-menerus Konfigurasi salah (port, env, image) docker logs namakontainer, cek error-nya
Tidak bisa akses dari luar CGNAT / port forwarding salah Pakai mesh VPN (Netbird/Tailscale) atau Cloudflare Tunnel
VM/LXC gagal start di Proxmox Storage penuh / resource kurang pvesm status, cek disk, hapus snapshot lama
Traefik 502 Bad Gateway Kontainer beda network Docker Pastikan app dan Traefik di network Docker yang sama

Penutup
#

Kalau diringkas, learning path saya gini: CasaOS di STB (kenalan) β†’ Debian di laptop kentang (basic Linux + SMB + Docker + VPN) β†’ Traefik (reverse proxy & SSL) β†’ Proxmox (virtualisasi & backup). Setiap fase bangun di atas fase sebelumnya.

Yang paling penting bukan hardwarenya, tapi konsistensi belajar sambil bikin. Nggak perlu buru-buru, nggak perlu beli gear mahal, dan nggak perlu malu mulai dari yang kecil. Server pertamamu nggak harus sempurna β€” harus ada.

Kalau ada pengalaman, pertanyaan, atau learning path-mu sendiri yang beda, cerita di kolom komentar ya. Siapa tahu bisa jadi artikel lanjutan πŸš€

Salam homelab!

Terkait


Load Comments