Home Lab Revamp Part 7
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
Untuk template dari LXC saya akan pakai Ubuntu (cuma itu yang saya punya, wkwkwk).
Dan setelah menunggu task Proxmox, saya sudah bisa login sebagai root di moby (nama CT yang baru).
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.
Instalasi Docker dan Portainer
Pertama, saya ingin membuat folder baru untuk menyimpan file-file dari Portainer
Setelah itu saya ingin menjalankan apt update
dan apt upgrade
.
Setelah update dan upgrade selesai, saya perlu mengikuti step-by-step instalasi dari website dokumentasi instalasi Docker di Ubuntu
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
Fingers crossed…
OK, saatnya coba akses via website dari komputerku.
Heck yeah!
Instalasi PiHole sebagai DNS
Pertama saya perlu klik connect di environment local
Setelah itu klik “Stack”
Lalu “Add Stack”, dan kita akan ditunjukkan halaman seperti ini
Kita ambil docker-compose.yml dari sini
Dan ubah beberapa hal (seperti TZ dan password) menjadi seperti ini
Dan setelah itu kita klik “Deploy the Stack”
Dan kita mendapatkan error
Berarti port itu masih ada yang pakai dan saatnya mengecek dengan ss -tuplen
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
Lalu kita coba create stack di portainer lagi…
YES!
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
Dan setelah mencoba mencari-cari…saya menyerah deh…saya coba ikutin pakai docker dengan CLI dari sini aja
Masih starting…
SAUS TARTAR! Unhealthy lagi…At this rate, saya akan coba install LXC yang bukan Ubuntu deh.
Saya pada akhirnya memutuskan untuk pakai Debian
OK, download-nya sudah selesai, kecil juga.
Setelah buat CT, buat user baru, saya dapet ini.
OK, berarti saya perlu jadi root lagi abis itu install sudo, habis itu jangan lupa tambahin user baru ke sudoers.
Dan bisa jalan.
Setelah selesai install docker, saya buat direktori di home.
Setelah buat docker-compose.yaml
kita jalankan container-nya
RAJUNGAN! Kena lagi deh
OK, kita tunggu lagi deh…fingers crossed
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.