Mengembangkan layanan Cloud Run secara lokal di Cloud Code for VS Code

Sebelum men-deploy layanan ke Cloud Run, Anda dapat mengembangkannya secara lokal menggunakan emulator Cloud Run.

Mengonfigurasi layanan untuk pengembangan

Jika Anda tidak memiliki file .vscode/launch.json yang ditentukan, dialog Run/Debug on Cloud Run Emulator memungkinkan Anda mengonfigurasi peluncuran, lalu menyimpan setelan ke .vscode/launch.json. Jika telah mengonfigurasi file .vscode/launch.json, Anda dapat mengedit file tersebut secara langsung.

Untuk menjalankan layanan secara lokal, tentukan konfigurasi Anda:

  1. Buka palet perintah (tekan Ctrl/Cmd+Shift+P atau klik View > Command Palette), lalu jalankan perintah Run on Cloud Run Emulator.
  2. Pada dialog Run/Debug on Cloud Run Emulator, tetapkan spesifikasi untuk konfigurasi Anda:

    • Hanya alat build yang diinstal secara lokal yang tersedia untuk Emulator Cloud Run
    • Pilih Docker atau Buildpacks sebagai builder, lalu tentukan sumber
    • (Opsional) Untuk menentukan variabel lingkungan yang akan diteruskan ke penampung yang sedang berjalan, luaskan Advanced Build Settings, lalu klik untuk menentukan pasangan nilai kunci.
      Nama Deskripsi Contoh
      PORT Port yang akan diproses oleh server HTTP. 8080
      K_SERVICE Nama layanan Cloud Run yang sedang dijalankan. hello-world
      K_REVISION Nama revisi Cloud Run yang sedang dijalankan. hello-world.1
      K_CONFIGURATION Nama konfigurasi Cloud Run yang membuat revisi. hello-world
    • (Opsional) Untuk menentukan koneksi Cloud SQL, luaskan Advanced Service Settings, klik Connections, lalu tentukan satu koneksi Cloud SQL per baris.
    • (Opsional) Centang opsi Buat layanan dapat diakses dari perangkat lain di jaringan lokal.
    • (Opsional) Jika Anda hanya ingin mem-build ulang dan menjalankan layanan secara manual, bukan otomatis saat Anda membuat perubahan, hapus opsi Mem-build ulang dan menjalankan ulang secara otomatis saat ada perubahan.

Menjalankan layanan secara lokal

  1. Setelah menentukan setelan yang diinginkan, jalankan layanan dengan mengklik Run.

  2. Jika diminta, autentikasi kredensial Anda untuk menjalankan dan men-debug aplikasi secara lokal.

  3. Pantau status deployment Anda di jendela output.

    Setelah deployment selesai, Anda dapat melihat layanan yang sedang berjalan dengan membuka URL yang ditampilkan di jendela output.

  4. Untuk melihat log panjang, beralihlah ke tampilan Cloud Run mendetail di jendela output.

    Panel output dengan hello-world-5 - Detail dipilih dari dropdown saluran output

  5. Setelah sesi selesai, klik kanan untuk menggunakan perintah berikut:

    • Lihat Log: Buka log aplikasi deployment tertentu dengan Logs Explorer Cloud Code.
    • Buka URL: Buka URL layanan aplikasi dari layanan tertentu di browser web.
  6. Jika Anda telah menonaktifkan mode lihat di konfigurasi peluncuran dan ingin membuat perubahan pada aplikasi, serta mem-build ulang dan men-deploy ulang aplikasi, klik status bar Cloud Code, lalu klik Aktifkan mode lihat.

  7. Untuk menghentikan deployment, Anda dapat mengklik tombol Stop di panel tindakan untuk deployment saat ini.

    Panel tindakan untuk deployment Cloud Run

Menyimpan rahasia

Jika kode Anda menyertakan data yang berpotensi sensitif seperti kunci API, sandi, dan sertifikat, menyimpannya sebagai secret dapat membantu mengamankannya. Integrasi Cloud Code Secret Manager memungkinkan Anda menyimpan secret ini dengan aman dan mengambilnya secara terprogram. Untuk melihat cara membuat dan mengelola secret dengan Cloud Code secara mendetail, lihat panduan Secret Manager.

Menyesuaikan konfigurasi launch.json yang ada

Plugin Cloud Code akan otomatis memperbarui file konfigurasi launch.json saat Anda memilih tindakan run. Untuk menyesuaikan lebih lanjut cara layanan Anda dijalankan, Anda dapat menentukan kolom berikut dalam file .vscode/launch.json:

  • watch: Memantau perubahan di ruang kerja dan menjalankan ulang layanan. Benar secara default.

    Contoh berikut menunjukkan smartwatch yang disetel ke true:

    "watch": true,
    
  • build: Tentukan builder (Docker, jibMaven, jibGradle, atau buildpacks) untuk mem-build image Anda.

    Contoh berikut menunjukkan builder Docker:

    "build": {
      "docker": {
        "path": "Dockerfile"
      }
    },
    

    Contoh berikut menunjukkan builder buildpack:

    "build": {
      "buildpacks": {
        "path": "src/requirements.txt",
        "builder": "gcr.io/buildpacks/builder:v1"
      }
    },
    
  • image: Tentukan nama gambar yang akan digunakan.

    Contoh berikut menunjukkan cara menentukan nama gambar:

      "image": "hello-world",
    
  • service: Tentukan layanan Cloud Run yang akan digunakan.

    Contoh berikut menunjukkan cara menentukan nama layanan, port, dan batas resource:

    "service": {
      "name": "hello-world",
      "containerPort": 8080,
      "resources": {
        "limits": {
          "memory": "256Mi"
        }
      }
    },
    
  • debug: Tentukan setelan debug seperti pemetaan jalur jarak jauh untuk memetakan jalur lokal ke jalur di penampung jarak jauh.

    Contoh berikut menunjukkan bagian debug yang menunjukkan lokasi file sumber:

    "debug": {
      "sourceFileMap": {
        "${workspaceFolder}": "/app"
      }
    }
    

Dapatkan Dukungan

Untuk mengirim masukan, laporkan masalah di GitHub, atau ajukan pertanyaan di Stack Overflow.