F5 · Modul 06
Tayang kedua: API FastAPI dalam container
37 langkah singkat, dari mudah sampai tantangan.
Level 1
Kenal
Level 2
Paham
Level 3
Terapkan
Level 4
Tantangan
Level 5
Pendalaman
Intinya
- API adalah kontrak: jalur, metode, bentuk JSON, dan kode status. FastAPI membuat validasi (422) dan dokumentasi (
/docs) dari petunjuk tipe. /healthmenjawab cepat, memeriksa basis data, dan menyebut versi yang tayang. Platform, pemantau uptime, dan CD memakainya.- Container mendengarkan
0.0.0.0:$PORTsebagai UID 1000. Image yang sama berjalan di Hugging Face Docker Space, Render, Koyeb, dan Cloud Run. - Oktober 2026: Docker Space butuh paket berbayar. Jalur gratis tanpa kartu course ini adalah Render (tidur setelah 15 menit sepi, ±1 menit bangun, 750 jam instance per bulan per workspace; perlu dicek ulang).
- Pilih platform dari batasnya: tidur, kartu kredit, RAM, wilayah, disk sementara, dan cara rollback.
Hasil belajar: setelah modul ini kamu bisa menulis API FastAPI kecil sesuai kontrak (jalur, metode, JSON, kode status); merancang /health yang berguna bagi platform, pemantau, dan CD; menguji API tanpa server; membangun image API yang mendengarkan 0.0.0.0:$PORT sebagai pengguna non-root; menayangkannya di Render atau Hugging Face Docker Space; serta membandingkan Render, Koyeb, dan Cloud Run berdasarkan batasnya.
Prasyarat: Modul 02 (image multi-stage, non-root), Modul 04 (CI hijau), Modul 05 (UI tipis di atas warung, cold start, metadata Space).
Waktu: ±3,5 jam (termasuk Lab di komputermu).
Proyek: warung-api tayang; curl …/health dari luar menjawab {"status": "ok", …}.
Istilah di modul ini (36)
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.
- 10 contoh kode
- 6 berkas latihan + tes
- 1 berkas data
Lihat isi zip
- BACA-DULU.txt
- contoh_f5_06_123.py
- contoh_f5_06_158.py
- contoh_f5_06_182.py
- contoh_f5_06_478.py
- contoh_f5_06_503.py
- contoh_f5_06_685.py
- contoh_f5_06_836.py
- contoh_f5_06_891.py
- contoh_f5_06_975.py
- contoh_f5_06_1488.py
- test_f5_06_2.py
- test_f5_06_3.py
- test_f5_06_1.py
- test_f5_06_4.py
- test_f5_06_5.py
- test_f5_06_6.py
- warung.sql