Home Lab Revamp Part 7

Posted on Jul 3, 2025

Pengantar

Seperti yang kalian sudah tahu, saya biasanya membuat Linux Container untuk deploy satu aplikasi yang saya butuhkan. Semisal, untuk Navidrome saya deploy 1 container, untuk Jellyfin juga saya deploy 1 container, untuk syncthing juga saya deploye 1 container. Saya takut nanti akan terjadi hal yang bernama container sprawl. Apa itu container sprawl? Sebenarnya itu terminologi yang saya buat-buat berdasarkan VM sprawl sih, VM sprawl sendiri adalah kondisi di mana banyak sekali VM yang tidak terkontrol di suatu lingkungan virtual. Di kasusku bukannya VM melainkan CT, saya harap kalian mengerti maksudku. Sekarang saya berpikir untuk membuat 1 CT lagi (semoga saja jadi yang terakhir) dan from now on memasang segala aplikasi yang mau saya pasang di CT itu. Supaya menghindari konfigurasi yang berlebihan dan saling tabrak, saya akan menggunakan teknologi yang bernama Docker dan juga Portainer untuk memudahkan konfigurasi. Aplikasi pertama yang saya ingin install adalah PiHole, DNS service untuk memblokir iklan-iklan di traffic. Saya sendiri sudah menggunakan uBlock Origin sebagai adblocker tetapi saya rasa lebih baik untuk memblokir iklan bahkan sebelum diterima oleh browser dan komputer saya.

Peringatan

Saya gagal.

Deployment Container

Pertama, saya perlu mengakses Proxmox Web UI alt text alt text

Untuk template dari LXC saya akan pakai Ubuntu (cuma itu yang saya punya, wkwkwk).

alt text

alt text

alt text

alt text

alt text

Dan setelah menunggu task Proxmox, saya sudah bisa login sebagai root di moby (nama CT yang baru).

alt text

Buat User Baru di CT

Seringkali saya menggunakan root user untuk menjalankan service. Hal ini terjadi pada Container saya yang saya gunakan untuk menjalankan Navidrome dan Syncthing. Pada Jellyfin, saya akhirnya memutuskan untuk membuat user sendiri. Hal yang sama juga akan saya lakukan pada CT moby ini.

alt text

Instalasi Docker dan Portainer

Pertama, saya ingin membuat folder baru untuk menyimpan file-file dari Portainer

alt text

Setelah itu saya ingin menjalankan apt update dan apt upgrade.

alt text

alt text

Setelah update dan upgrade selesai, saya perlu mengikuti step-by-step instalasi dari website dokumentasi instalasi Docker di Ubuntu

alt text

OK, sudah terinstall.

Sejujurnya, saya terinspirasi dari video ini untuk menggunakan Portainer. Saya coba untuk mengikuti langkah-langkahnya dengan menggunakan docker-compose.yml

nano docker-compose.yml

Paste dari sini

Lalu jalankan docker compose up -d

alt text

Fingers crossed…

alt text

OK, saatnya coba akses via website dari komputerku.

alt text

Heck yeah!

alt text

Instalasi PiHole sebagai DNS

Pertama saya perlu klik connect di environment local

alt text

Setelah itu klik “Stack”

alt text

Lalu “Add Stack”, dan kita akan ditunjukkan halaman seperti ini

alt text

Kita ambil docker-compose.yml dari sini

Dan ubah beberapa hal (seperti TZ dan password) menjadi seperti ini

alt text

Dan setelah itu kita klik “Deploy the Stack”

Dan kita mendapatkan error

alt text

Berarti port itu masih ada yang pakai dan saatnya mengecek dengan ss -tuplen

alt text

OK, berarti uid process-nya itu 992 untuk TCP/UDP 53

Dan setelah membaca lebih lanjut dari sini, ternyata ada konfigurasi khusus untuk Ubuntu. Untungnya, saya menemukan tutorial ini. Saya perlu mengubah konfigurasi dengan sudo nano /etc/systemd/resolved.conf. Saya perlu mengubah #DNSStubListener=yes menjadi DNSStubListener=no. Setelah itu menjalankan command seperti berikut

alt text

Lalu kita coba create stack di portainer lagi…

alt text

YES!

alt text

Eits, jangan terlalu cepat senang dulu, kita masih perlu menunggu…statusnya masih starting tuh. Dan ternyata masih gagal, statusnya unhealthy dan ada error seperti ini

alt text

Dan setelah mencoba mencari-cari…saya menyerah deh…saya coba ikutin pakai docker dengan CLI dari sini aja

alt text

Masih starting…

alt text

SAUS TARTAR! Unhealthy lagi…At this rate, saya akan coba install LXC yang bukan Ubuntu deh.

alt text

Saya pada akhirnya memutuskan untuk pakai Debian

alt text

OK, download-nya sudah selesai, kecil juga.

Setelah buat CT, buat user baru, saya dapet ini.

alt text

OK, berarti saya perlu jadi root lagi abis itu install sudo, habis itu jangan lupa tambahin user baru ke sudoers.

alt text

Dan bisa jalan.

Setelah selesai install docker, saya buat direktori di home.

alt text

Setelah buat docker-compose.yaml kita jalankan container-nya

alt text

alt text

RAJUNGAN! Kena lagi deh

alt text

OK, kita tunggu lagi deh…fingers crossed

alt text

hadeh.

Kesimpulan

Saya sudah berhasil install portainer tapi gagal install pi-hole di docker-nya. Mungkin saya akan pakai cara trandisional untuk pi-hole dan menggunakan portainer untuk service yang lain. Thank you udah baca…sorry kalau tidak sesuai ekspektasi. Ciao.