Rilis situsnya: Git → CI/CD → Pages
Domainnya kini menunjuk ke edge Cloudflare — ke ketiadaan. Langkah ini soal apa yang ada di balik pintu depan itu, dan keputusan di bawahnya.
Sewa server, atau cukup push file?
Langkah yang jelas adalah menyewa komputer — VPS Hostinger — memasang nginx, mengurus sertifikat, dan melayani situs dari sana. Kami punya satu yang siap. Kami tak memakainya untuk situs. Ini alasannya.
Server berguna saat ada kode yang harus dijalankan di tiap permintaan — database yang ditanya, sesi yang dicek, halaman yang dirakit. Situs kami tak punya itu. Ia di-prerender: tiap halaman dibangun sebelumnya jadi file HTML, CSS, dan JavaScript polos. Tak ada yang perlu dijalankan — hanya file untuk dibagikan.
VPS Hostinger + nginx
- Komputer yang Anda sewa, menyala 24/7
- Anda yang patch OS, perpanjang sertifikat, jaga uptime
- Anda yang skala sendiri saat trafik melonjak
- Pas saat Anda menjalankan kode sisi-server
Cloudflare Pages
- Push file; semuanya mendarat di edge global
- HTTPS, penskalaan, DDoS — semua diurus untuk Anda
- Dilayani dari kota yang paling dekat dengan tiap pengunjung
- Pas untuk situs statis yang di-prerender
Situs satu-halaman yang dirender statis tak butuh SSR — tak ada yang merendernya ulang di tiap
permintaan — jadi membiarkan satu mesin menyala 24/7 hanya untuk membagikan file statis adalah
alat yang salah, lagipula CDN melayani file yang sama lebih cepat. Maka situsnya pindah ke
Cloudflare Pages. VPS-nya tak mubazir — ia dicadangkan untuk api.pangaea.id kelak, tempat
kode server sungguhan akan tinggal.
Bagaimana sebuah perubahan tayang
Kami tak pernah mengunggah file dengan tangan. Semuanya satu push:
- Push ke
main— itu pemicunya. - GitHub Actions berjalan — memasang dependency, menjalankan typecheck, dan mem-build situs
statis ke folder
dist/(sama dengannpm run buildyang kami jalankan lokal). wranglermengunggahdist/ke Cloudflare Pages, yang menyebarkannya ke tiap edge.- Beberapa menit kemudian tayang sedunia. Deploy buruk? Roll back ke mana pun sebelumnya dengan satu klik — Pages menyimpan riwayatnya.
Pull request hanya melewati gate build + typecheck tapi tak pernah men-deploy — hanya merge ke
main yang merilis. (Apa lagi yang dilakukan tiap push — mengetuk pintu mesin pencari — punya
entrinya sendiri.)
Rangkaian lengkapnya — token API, dua secret, membuat project Pages, jebakan "project not found" — ada di panduan pendamping CI/CD: GitHub Actions → Cloudflare Pages →.
Tayang
Domain diarahkan, situs dirilis — https://pangaea.id jadi nyata. Apa yang sebenarnya terjadi di
setengah detik antara mengetik itu dan melihat halamannya adalah cerita mungil tersendiri:
Apa yang terjadi saat Anda mengetik URL →.
Sources