Pengujian lokal

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 berjalan secara lokal dengan akses ke layanan Google Cloud.

Berjalan di emulator penayangan Knative

Plugin Cloud Code untuk VS Code dan JetBrains IDEs memungkinkan Anda menjalankan dan men-debug image container secara lokal di emulator penayangan Knative dalam IDE Anda. Emulator memungkinkan Anda mengonfigurasi lingkungan yang mewakili layanan Anda yang berjalan di penayangan Knative.

Anda dapat mengonfigurasi properti seperti CPU dan alokasi memori, menentukan variabel lingkungan, serta menetapkan koneksi database Cloud SQL

  1. Instal Cloud Code untuk VS Code atau JetBrains IDE.
  2. Ikuti petunjuk untuk pengembangan dan proses debug secara lokal di dalam IDE Anda

Berjalan secara lokal menggunakan Docker

Untuk menguji image container secara lokal menggunakan Docker:

  1. Gunakan perintah Docker:

    PORT=8080 && docker run -p 9090:${PORT} -e PORT=${PORT} IMAGE_URL

    Ganti IMAGE_URL dengan mereferensikan ke image container, misalnya, gcr.io/cloudrun/hello.

    Variabel lingkungan PORT menentukan port yang akan digunakan aplikasi Anda untuk memproses permintaan HTTP atau HTTPS Ini adalah persyaratan dari Kontrak Runtime Container. Dalam contoh ini, kita gunakan port 8080.

  2. 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.

Berjalan secara lokal menggunakan Docker dengan akses ke layanan Google Cloud

Jika menggunakan library klien Google Cloud untuk mengintegrasikan aplikasi Anda dengan layanan Google Cloud, dan belum mengamankan layanan tersebut untuk mengontrol akses eksternal, Anda dapat menyiapkan penampung lokal untuk melakukan autentikasi dengan layanan Google Cloud menggunakan Kredensial Default Aplikasi.

Untuk menjalankan secara lokal:

  1. Lihat Mulai Menggunakan Autentikasi untuk mendapatkan petunjuk tentang cara membuat, mengambil, dan mengonfigurasi kredensial Akun Layanan Anda.

  2. Berikut bagaimana menjalankan flag Docker tersebut untuk masuk ke kredensial dan konfigurasi dari sistem lokal Anda ke dalam container lokal:

    1. Gunakan flag --volume (-v) untuk memasukkan file kredensial ke dalam container (dengan asumsi Anda telah menetapkan variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS di mesin Anda):
      -v $GOOGLE_APPLICATION_CREDENTIALS:/tmp/keys/FILE_NAME.json:ro
    2. Gunakan tanda --environment (-e) untuk menetapkan variabel GOOGLE_APPLICATION_CREDENTIALS di dalam container:
      -e GOOGLE_APPLICATION_CREDENTIALS=/tmp/keys/FILE_NAME.json
  3. Anda juga dapat menggunakan perintah run Docker 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

    /tmp/keys/FILE_NAME.json
    yang ditampilkan dalam contoh di atas adalah lokasi yang wajar untuk menempatkan kredensial Anda di dalam container.

    Namun lokasi direktori lainnya juga dapat berfungsi. Persyaratan pentingnya adalah variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS harus cocok dengan lokasi pemasangan binding di dalam container.

    Perlu diperhatikan bahwa dengan beberapa layanan Google Cloud, Anda dapat menggunakan konfigurasi alternatif untuk mengisolasi pemecahan masalah lokal dari data dan performa produksi.

Langkah selanjutnya

Untuk mempelajari cara men-deploy container yang telah dibangun, ikuti Men-deploy Layanan.