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 dan kemudian menyimpan setelan ke .vscode/launch.json. Jika telah mengonfigurasi file .vscode/launch.json, Anda dapat mengedit file 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. Dalam 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 Anda, lalu tentukan sumber
    • (Opsional) Untuk menentukan variabel lingkungan yang akan diteruskan ke penampung yang sedang berjalan, luaskan Setelan Build Lanjutan, 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 membangun ulang dan menjalankan layanan secara manual, bukan secara otomatis saat Anda melakukan perubahan, hapus opsi Bangun ulang dan jalankan ulang secara otomatis saat ada perubahan.

Menjalankan layanan secara lokal

  1. Setelah menentukan setelan pilihan, 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 verbose, beralihlah ke tampilan Cloud Run mendetail di jendela output.

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

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

    • Melihat Log: Buka log aplikasi dari Deployment tertentu dengan Logs Explorer Cloud Code.
    • Buka URL: Membuka URL layanan aplikasi dari layanan tertentu di browser web.
  6. Jika Anda telah menonaktifkan mode pemantauan di konfigurasi peluncuran dan ingin membuat perubahan pada aplikasi serta membangun kembali dan men-deploy ulang aplikasi, klik status bar Cloud Code, lalu klik Turn on watch mode.

  7. Untuk menghentikan deployment, Anda dapat mengklik tombol Hentikan 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 Secret Manager Cloud Code memungkinkan Anda menyimpan secret ini dengan aman dan mengambilnya secara terprogram. Untuk melihat detail cara membuat dan mengelola secret dengan Cloud Code, lihat panduan Secret Manager.

Menyesuaikan konfigurasi launch.json yang ada

Plugin Cloud Code memperbarui file konfigurasi launch.json secara otomatis saat Anda memilih tindakan jalankan. 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 membangun image Anda.

    Contoh berikut menunjukkan builder Docker:

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

    Contoh berikut menunjukkan pembuat buildpack:

    "build": {
      "buildpacks": {
        "path": "src/requirements.txt",
        "builder": "gcr.io/buildpacks/builder:v1"
      }
    },
    
  • image: Tentukan nama image 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, ajukan pertanyaan di Stack Overflow. Jika Anda adalah pelanggan Google Cloud, Anda dapat mengajukan tiket melalui saluran dukungan Google Cloud standar.