Sebelum menyentuh Caddy, kalian perlu menguasai konsep web server, HTTP/HTTPS, DNS, dan TLS. Di episode ini kalian juga menyiapkan environment Linux, menginstall Caddy, dan memverifikasi instalasi pertama dengan perintah dasar.

Selamat datang di series Belajar Caddy! Series ini akan membawa kalian menguasai Caddy — web server modern yang menangani HTTPS secara otomatis — dari fondasi konsep sampai production readiness. Total ada 31 episode yang tersusun dari sepuluh fase.
Tapi sebelum menjalankan caddy run, ada beberapa skill dasar dan perangkat lunak yang wajib kalian miliki. Mengapa prasyarat ini penting? Karena Caddy menggantikan tugas Apache atau NGINX dengan konfigurasi yang jauh lebih sederhana, dan otomatisasi HTTPS-nya bergantung pada pemahaman kalian tentang DNS, port, dan sertifikat TLS. Kalau konsep ini belum jelas, seluruh series akan terasa membingungkan.
Episode 0 ini adalah peta jalan kalian: kita akan memastikan skill dasar, menyiapkan environment Linux, menginstall Caddy, dan melakukan verifikasi pertama. Setelah episode ini selesai, seluruh series bisa diikuti dengan nyaman.
Caddy adalah web server, jadi pahami dulu apa itu web server: program yang menerima permintaan HTTP dari browser dan mengirimkan respons. Kalian wajib memahami perbedaan HTTP dan HTTPS, struktur URL, metode request seperti GET dan POST, serta kode status seperti 200, 301, dan 404. Tanpa ini, membaca log akses akan seperti membaca bahasa asing.
Konsep kunci yang harus dipahami:
example.com diterjemahkan ke alamat IP.Caddy memakai alamat domain untuk menentukan situs mana yang dilayani. Jadi kalian wajib paham bagaimana A record DNS bekerja dan mengapa port 80 serta 443 harus terbuka di firewall.
Caddy adalah binary tunggal yang dioperasikan lewat terminal. Biasakan diri dengan perintah dasar Linux seperti ls, cd, sudo, systemctl, dan curl. Editor seperti VS Code akan sangat membantu untuk menulis Caddyfile.
uname -a
cat /etc/os-release
idOutput dari uname -a memberi tahu arsitektur dan kernel, /etc/os-release memberi tahu distro, dan id menunjukkan user yang sedang aktif. Ketiganya penting karena Caddy sebaiknya dijalankan sebagai user biasa, bukan root.
Cara paling mudah di Debian dan Ubuntu adalah lewat repository resmi Cloudsmith:
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddyPerintah curl -1sLf ... mengambil key penandatanganan dan daftar repository, lalu sudo apt install caddy memasang Caddy versi stabil terbaru.
Siapkan juga perangkat pendukung yang akan dipakai di episode-episode berikutnya:
docker --version
git --version
openssl version
curl --versionCaddy sangat ringan karena ditulis dalam Go. Minimal kalian butuh:
Jika kalian ingin merasakan automatic HTTPS sungguhan, siapkan juga nama domain dengan akses DNS. Tanpa domain, Caddy tetap bekerja untuk localhost dan IP, tapi tanpa sertifikat publik.
Setelah instalasi selesai, verifikasi bahwa binary Caddy siap dipakai:
caddy version
caddy list-modulescaddy version menampilkan versi v2.x. caddy list-modules menampilkan semua modul yang ter-compile ke dalam binary — fitur ini akan kita bahas di episode 29.
Buat file pertama di direktori home:
localhost {
respond "Halo dari Caddy!"
}Lalu jalankan Caddy dalam mode foreground agar mudah dimatikan:
caddy run --config ~/CaddyfileSetelah Caddy berjalan, buka http://localhost di browser atau gunakan curl http://localhost — keduanya harus menampilkan teks Halo dari Caddy!. Untuk menghentikan, tekan Ctrl+C.
Rangkuman prasyarat yang sudah kalian siapkan di episode 0:
Jika ada yang belum terpenuhi, berhenti dulu dan lengkapi sebelum melanjutkan. Fondasi yang kuat akan membuat 30 episode berikutnya terasa jauh lebih ringan.
Di episode 0 ini kalian sudah menyiapkan pijakan untuk seluruh series: memahami konsep web server, DNS, dan TLS, menyiapkan environment Linux, menginstall Caddy v2 dari repository resmi, dan memverifikasi instalasi pertama dengan Caddyfile hello world.
Inti yang harus dibawa pulang:
caddy run dan dihentikan dengan Ctrl+C.caddy list-modules memperlihatkan modul yang tersedia di binary kalian.Di episode 1 selanjutnya kita akan membahas sejarah, latar belakang, dan mengapa membutuhkan Caddy — dari evolusi web server tradisional, kelahiran Caddy oleh Matt Holt di tahun 2015, hingga perbandingan Caddy dengan NGINX, Apache, dan Traefik. Pastikan environment kalian sudah siap, karena perjalanan Belajar Caddy baru saja dimulai!