Selama pengembangan, Anda dapat menjalankan dan menguji image container secara lokal sebelum men-deploy. Anda dapat menggunakan Cloud Code atau Docker yang diinstal secara lokal untuk menjalankan dan menguji secara lokal, termasuk menjalankan secara lokal dengan akses ke layanan Google Cloud .
Menjalankan di emulator inferensi Knative
Plugin Cloud Code untuk VS Code dan JetBrains IDEs memungkinkan Anda menjalankan dan men-debug image container secara lokal di emulator layanan Knative dalam IDE Anda. Dengan emulator, Anda dapat mengonfigurasi lingkungan yang mewakili layanan Anda yang berjalan di layanan Knative.
Anda dapat mengonfigurasi properti seperti CPU dan alokasi memori, menentukan variabel lingkungan, serta menetapkan koneksi database Cloud SQL
- Instal Cloud Code untuk VS Code atau JetBrains IDE.
- Ikuti petunjuk untuk pengembangan dan proses debug secara lokal di dalam IDE Anda
- VS Code: Mengembangkan dan melakukan proses debug secara lokal
- IntelliJ: Mengembangkan dan melakukan proses debug secara lokal
Menjalankan secara lokal menggunakan Docker
Untuk menguji image container secara lokal menggunakan Docker:
Gunakan perintah Docker:
PORT=8080 && docker run -p 9090:${PORT} -e PORT=${PORT} IMAGE_URL
Ganti IMAGE_URL dengan referensi ke image container, contohnya,
gcr.io/cloudrun/hello.Variabel lingkungan
PORTmenentukan port yang akan digunakan aplikasi Anda untuk memproses permintaan HTTP atau HTTPS Ini adalah persyaratan dari Kontrak Runtime Container. Dalam contoh ini, kita menggunakan port 8080.Buka http://localhost:9090 di browser Anda.
Jika Anda baru mulai menggunakan container, sebaiknya Anda meninjau panduan Memulai Docker. Untuk mempelajari perintah Docker lebih lanjut, lihat panduan dokumentasi Docker.
Menjalankan secara lokal menggunakan Docker dengan akses ke layanan Google Cloud
Jika Anda menggunakan Google Cloud library klien untuk mengintegrasikan aplikasi Anda dengan layanan Google Cloud , dan belum mengamankan layanan tersebut untuk mengontrol akses eksternal, Anda dapat menyiapkan container lokal untuk melakukan autentikasi dengan layanan Google Cloudmenggunakan kunci akun layanan.
Untuk menjalankan secara lokal:
Lihat Kunci akun layanan untuk mendapatkan bantuan terkait penyiapan kredensial Anda.
Berikut bagaimana menjalankan flag Docker tersebut untuk masuk ke kredensial dan konfigurasi dari sistem lokal Anda ke dalam container lokal:
- Gunakan flag
--volume(-v) untuk memasukkan file kredensial ke dalam container (dengan asumsi Anda telah menetapkan variabel lingkunganGOOGLE_APPLICATION_CREDENTIALSdi mesin Anda):-v $GOOGLE_APPLICATION_CREDENTIALS:/tmp/keys/FILE_NAME.json:ro
- Gunakan tanda
--environment(-e) untuk menetapkan variabelGOOGLE_APPLICATION_CREDENTIALSdi dalam container:-e GOOGLE_APPLICATION_CREDENTIALS=/tmp/keys/FILE_NAME.json
- Gunakan flag
Anda juga dapat menggunakan perintah
runDocker yang dikonfigurasi sepenuhnya ini:PORT=8080 && docker run \ -p 9090:${PORT} \ -e PORT=${PORT} \ -e K_SERVICE=dev \ -e K_CONFIGURATION=dev \ -e K_REVISION=dev-00001 \ -e GOOGLE_APPLICATION_CREDENTIALS=/tmp/keys/FILE_NAME.json \ -v $GOOGLE_APPLICATION_CREDENTIALS:/tmp/keys/FILE_NAME.json:ro \ IMAGE_URL
Perhatikan bahwa jalur
yang ditampilkan dalam contoh di atas adalah lokasi yang wajar untuk menempatkan kredensial Anda di dalam container./tmp/keys/FILE_NAME.json
Namun lokasi direktori lainnya juga dapat berfungsi. Persyaratan pentingnya adalah variabel lingkungan
GOOGLE_APPLICATION_CREDENTIALSharus cocok dengan lokasi pemasangan binding di dalam container.Perlu diperhatikan juga bahwa dengan beberapa layanan, Anda dapat menggunakan konfigurasi alternatif untuk mengisolasi pemecahan masalah lokal dari data dan performa produksi. Google Cloud
Langkah berikutnya
Untuk mempelajari cara men-deploy container yang telah dibuat, ikuti Men-deploy Layanan.