F5 · Modul 07
Rahasia, konfigurasi, domain, pemantauan sederhana
43 langkah singkat, dari mudah sampai tantangan.
Level 1
Kenal
Level 2
Paham
Level 3
Terapkan
Level 4
Tantangan
Level 5
Pendalaman
Intinya
- Konfigurasi masuk lewat variabel lingkungan dan dibaca sekali oleh
baca_konfigurasi(env), yang memeriksa semuanya dan gagal cepat dengan pesan jelas. - Rahasia hanya ada di penyimpan rahasia layanan (GitHub Actions secrets, Render Environment, Hugging Face Space secrets, Streamlit secrets). Repo hanya berisi
.env.contoh. - Kunci API dikirim di header, dibandingkan dengan
hmac.compare_digest, tidak pernah dicetak, dan bisa dirotasi tanpa mengubah kode. - Domain sendiri = rekaman DNS (biasanya
CNAME) ke host layanan + TLS yang diurus layanan. Tidak semua paket gratis mendukungnya. - Pemantauan sederhana: satu baris log JSON per permintaan,
/healthdicek dari luar dengan jarang, dan alarm hanya untuk kegagalan beruntun.
Hasil belajar: setelah modul ini kamu bisa membaca dan memvalidasi konfigurasi dari variabel lingkungan di satu tempat; menyimpan rahasia di penyimpan rahasia setiap layanan; melindungi endpoint dengan kunci API yang bisa dirotasi; menulis log JSON tanpa membocorkan rahasia; menghubungkan domain sendiri lewat DNS; serta memantau /health, galat, dan latensi dengan cara sederhana.
Prasyarat: Modul 03 (.gitignore, rahasia yang bocor), Modul 05 (cold start), Modul 06 (warung-api tayang, /health, baca_health).
Waktu: ±3 jam (termasuk Lab di komputermu).
Proyek: warung-api membaca konfigurasi dari lingkungan, /pelanggan/setia dilindungi kunci API, log JSON, domain (opsional), dan pemantauan /health.
Istilah di modul ini (30)
Ketuk istilah untuk melihat penjelasannya. Di materi, istilah bergaris titik membuka kartu yang sama. Semua istilah course
Bahan modul
Semua kode, latihan, dan data modul ini dalam satu zip, untuk dijalankan di laptop atau Google Colab.
- 13 contoh kode
- 7 berkas latihan + tes
Lihat isi zip
- BACA-DULU.txt
- contoh_f5_07_39.py
- contoh_f5_07_76.py
- contoh_f5_07_130.py
- contoh_f5_07_323.py
- contoh_f5_07_365.py
- contoh_f5_07_607.py
- contoh_f5_07_626.py
- contoh_f5_07_669.py
- contoh_f5_07_811.py
- contoh_f5_07_1062.py
- contoh_f5_07_1094.py
- contoh_f5_07_1233.py
- contoh_f5_07_1510.py
- test_f5_07_2.py
- test_f5_07_1.py
- test_f5_07_4.py
- test_f5_07_3.py
- test_f5_07_5.py
- test_f5_07_6.py
- test_f5_07_7.py