Aplikasi baru benar-benar selesai ketika bisa dijalankan orang lain. Section ini membahas packaging dengan pyproject.toml, containerization dengan Docker, konfigurasi environment, dan praktik deployment aplikasi web.
Rancang struktur project Python: flat vs src layout, lokasi tests dan docs, konvensi penamaan, serta berkas esensial.
Buka → # Membuat pyproject.tomlBedah anatomi lengkap tabel [project]: metadata, dependencies, optional-dependencies, hingga jebakan sintaks TOML.
Buka → # Build System dan Package MetadataPahami tabel [build-system], peran PEP 517, backend alternatif, dan ke mana metadata pyproject.toml berakhir.
Buka → # Membangun Wheel dan sdistJalankan python -m build pada package nyata, bedah isi wheel dan sdist, lalu periksa artefak sebelum distribusi.
Buka → # Membuat Command-Line Entry PointsUbah package menjadi perintah terminal sungguhan lewat [project.scripts], lalu lihat wrapper yang dibuatkan pip.
Buka → # Mengemas AplikasiBedakan aplikasi dari library, kemas aplikasi sebagai satu file dengan zipapp, dan pisahkan data dari secret.
Buka → # Containerization dengan DockerBangun image Docker untuk aplikasi Python: Dockerfile berlapis, layer caching, user non-root, dan docker compose.
Buka → # Environment ConfigurationTerapkan prinsip 12-factor: konfigurasi di environment, bukan di kode, tervalidasi sejak startup.
Buka → # Deployment Aplikasi WebSusun anatomi deployment dari uvicorn sampai reverse proxy, pilih platform, dan pahami zero-downtime.
Buka → # Monitoring AplikasiPantau uptime, latency, dan error rate dengan health check, log terstruktur, error tracking, serta metrik Prometheus.
Buka →