Laman ini menjelaskan beberapa hal yang perlu Anda ketahui untuk memulai pengembangan. layanan untuk penyaluran Knative.
Persyaratan kode
Anda harus memenuhi syarat berikut saat Anda mengembangkan layanan:
- Layanan harus memproses permintaan.
Anda dapat mengkonfigurasikan port
untuk mengirim permintaan.
Dalam instance penampung penayangan Knative, nilai
PORT
variabel lingkungan selalu mencerminkan porta tujuan pengiriman permintaan. Kode Anda harus memeriksa keberadaan variabel lingkunganPORT
ini dan jika ada, harus memprosesnya untuk memaksimalkan portabilitas. - Layanan harus stateless. Kebijakan ini tidak dapat bergantung pada status lokal yang persisten.
- Layanan tidak boleh melakukan aktivitas latar belakang di luar cakupan permintaan penanganannya.
Anda dapat menemukan detail selengkapnya tentang batasan ini di Kontrak Runtime Container.
Dukungan bahasa pemrograman
Penyajian Knative memungkinkan Anda untuk menulis kode dalam bahasa pemrograman pilihan Anda.
Menggunakan server web
Anda dapat menggunakan server web untuk memantau port yang diperlukan, dan memproses serta mengarahkan permintaan masuk. Misalnya, developer Node.js dapat menggunakan Express.js, developer Python dapat menggunakan Flask, developer Ruby dapat menggunakan Sinatra, dan sebagainya.
Mem-build kode dalam container
Untuk men-deploy ke penayangan Knative, Anda harus menyediakan image container. Image container adalah format paket yang mencakup kode Anda, paketnya, dependensi biner apa pun yang diperlukan, sistem operasi yang akan digunakan, dan hal lain yang diperlukan untuk menjalankan layanan Anda.
File bernama Dockerfile biasa digunakan untuk mendeklarasikan cara membangun image container.
Dockerfiles sering kali dimulai dari image dasar (misalnya FROM golang:1.11
).
Anda dapat menemukan image dasar yang dikelola oleh penulis OS dan bahasa di
Docker Hub. Cloud Build memeriksa image yang di-cache sebelum mengambilnya dari Docker Hub. Jika Anda menggunakan build pihak ketiga
Anda dapat mengonfigurasi {i>daemon<i} Docker
untuk memeriksa {i>image<i} yang sama
{i>cache<i}. Anda juga dapat menemukan image dasar yang dikelola oleh Google di
Google Cloud Marketplace.
Jika Anda membawa biner Anda sendiri, pastikan biner dikompilasi untuk Linux ABI x86_64.
Resource ini menyediakan informasi lebih lanjut tentang Dockerfile:
- Pelajari sintaksis Dockerfile melalui Referensi Dockerfile.
- Pelajari bagaimana Dockerfile bisa digunakan bersama melalui tips di Praktik terbaik untuk menulis Dockerfile.
Langkah selanjutnya
- Setelah memiliki kode layanan dan Dockerfile, Anda harus mem-build image container, lalu melanjutkan iterasi dalam pengujian lokal.
- Jika Anda memigrasikan aplikasi web yang sudah ada, lihat Memigrasikan Layanan ke penayangan Knative.
- Untuk praktik terbaik dalam merancang, mengimplementasikan, menguji, dan men-deploy layanan dalam penayangan Knative, lihat Tips pengembangan.