ID region
REGION_ID adalah kode singkat yang ditetapkan Google berdasarkan region yang Anda pilih saat membuat aplikasi. Kode ini tidak sesuai dengan negara atau provinsi, meskipun beberapa ID region mungkin tampak mirip dengan kode negara dan provinsi yang umum digunakan. Untuk aplikasi yang dibuat setelah Februari 2020, REGION_ID.r disertakan dalam URL App Engine. Untuk aplikasi lama yang dibuat sebelum tanggal tersebut, ID region bersifat opsional dalam URL.
Pelajari ID region lebih lanjut.
Panduan ini menjelaskan cara men-deploy aplikasi Anda di lingkungan standar ke Cloud Run menggunakan Google Cloud CLI. Petunjuk ini berlaku untuk runtime generasi kedua yang tidak menggunakan layanan paket lama App Engine.
Cloud Run menggunakan banyak infrastruktur yang sama dengan lingkungan standar App Engine, sehingga ada banyak kesamaan di antara kedua platform ini. Untuk mempelajari lebih lanjut persamaan dan perbedaan antara App Engine dan Cloud Run, termasuk manfaat bermigrasi ke Cloud Run, lihat ringkasan perbandingan.
Untuk men-deploy ke Cloud Run menggunakan perintah gcloud beta app migrate, pilih salah satu strategi berikut:
Gunakan file
app.yamluntuk men-deploy layanan ke Cloud Run menggunakan konfigurasi App Engine yang ada.Deploy aplikasi App Engine yang ada langsung ke Cloud Run.
Sebelum memulai
Pastikan Anda memiliki akses ke kode sumber App Engine, dan aplikasi App Engine Anda berjalan tanpa error.
Aktifkan Cloud Run Admin API dan Artifact Registry API:
Konfigurasi project dan region Anda menggunakan perintah berikut:
gcloud auth login gcloud config set project PROJECT_ID gcloud config set run/region REGION gcloud components updateGanti kode berikut:
- PROJECT_ID dengan project ID Google Cloud Anda.
- REGION dengan wilayah Anda.
Tinjau fitur yang tidak kompatibel di aplikasi Anda, dan hapus fitur tersebut sebelum bermigrasi ke Cloud Run. Jika ada fitur yang tidak kompatibel di aplikasi yang ada, proses migrasi akan berhenti dan mencantumkan ketidakcocokan tersebut.
Tinjau perbedaan Cloud Run berikut:
Cloud Run menggunakan istilah
Revision, bukanVersion, untuk mewakili setiap kali Anda men-deploy perubahan ke layanan tertentu. Men-deploy aplikasi Anda ke layanan di Cloud Run untuk pertama kalinya akan menciptakan revisi pertamanya. Setiap deployment layanan berikutnya akan membuat revisi lainnya. Pelajari selengkapnya tentang cara men-deploy ke Cloud Run.Anda dapat men-deploy kode sumber ke Cloud Run menggunakan gcloud CLI atau konsol untuk mengonfigurasi dan mengelola setelan aplikasi Anda. Google Cloud Cloud Run tidak memerlukan konfigurasi berbasis file; namun, konfigurasi YAML didukung.
Setiap layanan yang Anda deploy ke Cloud Run menggunakan domain
run.appdi URL untuk mengakses layanan secara publik.Tidak seperti layanan App Engine yang bersifat publik secara default, layanan Cloud Run bersifat pribadi secara default dan mengharuskan Anda mengonfigurasinya untuk akses publik (tidak diautentikasi).
Peran yang diperlukan
Anda dapat memilih untuk membuat akun layanan baru atau menggunakan akun layanan yang dikelola pengguna yang sama di Cloud Run yang Anda gunakan untuk App Engine. Anda atau administrator Anda harus memberikan peran IAM berikut kepada akun deployer dan akun layanan Cloud Build.
Klik untuk melihat peran yang diperlukan untuk akun deployer
Untuk mendapatkan izin yang Anda perlukan untuk membangun dan men-deploy dari sumber, minta administrator untuk memberi Anda peran IAM berikut:
- Cloud Run Source Developer (
roles/run.sourceDeveloper) di project Anda - Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer) di project Anda - Pengguna Akun Layanan (
roles/iam.serviceAccountUser) pada identitas layanan Cloud Run
Klik untuk melihat peran yang diperlukan untuk akun layanan Cloud Build
Cloud Build secara otomatis menggunakan
akun layanan default Compute Engine sebagai akun layanan Cloud Build default untuk membangun kode sumber dan
resource Cloud Run Anda, kecuali jika Anda mengganti perilaku ini. Agar Cloud Build dapat membangun sumber Anda, minta administrator Anda untuk memberikan peran Cloud Run Builder (roles/run.builder) ke akun layanan default Compute Engine di project Anda:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com \ --role=roles/run.builder
Ganti PROJECT_NUMBER dengan nomor project Google Cloud
Anda, dan PROJECT_ID dengan ID project Google Cloud
Anda. Untuk mengetahui petunjuk mendetail tentang cara menemukan project ID dan nomor project Anda,
lihat Membuat
dan mengelola project.
Pemberian peran builder Cloud Run ke akun layanan default Compute Engine memerlukan waktu beberapa menit untuk berlaku.
Untuk mengetahui daftar peran dan izin IAM yang terkait dengan Cloud Run, lihat Peran IAM Cloud Run dan Izin IAM Cloud Run. Jika layanan Cloud Run Anda berinteraksi dengan Google Cloud API, seperti Library Klien Cloud, lihat panduan konfigurasi identitas layanan. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat izin deployment dan mengelola akses.
Menggunakan file app.yaml
Terjemahkan file app.yaml App Engine Anda ke layanan Cloud Run dengan menjalankan perintah berikut:
gcloud beta app migrate-to-run --appyaml=PATH --entrypoint=ENTRYPOINT
Ganti kode berikut:
- PATH dengan jalur ke file
app.yamlAnda. - ENTRYPOINT dengan perintah titik entri untuk aplikasi Anda.
Jika Anda berada di direktori project, argumen PATH dan ENTRYPOINT bersifat opsional.
Untuk mengetahui informasi selengkapnya tentang argumen yang dapat Anda gunakan dengan perintah gcloud beta app migrate-to-run, lihat gcloud beta app migrate-to-run.
Men-deploy aplikasi App Engine yang sudah ada
Deploy aplikasi App Engine yang ada langsung ke Cloud Run dengan menjalankan perintah berikut:
gcloud beta app migrate-to-run --service=SERVICE --version=VERSION --entrypoint=ENTRYPOINT
Perintah ini akan meminta Anda untuk menentukan jalur relatif ke direktori kode sumber Anda.
Ganti kode berikut:
- SERVICE dengan nama layanan App Engine Anda.
- VERSION dengan ID versi layanan Anda.
- ENTRYPOINT dengan perintah titik entri untuk aplikasi Anda. Jika Anda berada di direktori project, argumen ini bersifat opsional.
Untuk mengetahui informasi selengkapnya tentang argumen yang dapat Anda gunakan dengan perintah gcloud beta app migrate, lihat gcloud beta app migrate-to-run.
Fitur yang Tidak Kompatibel
Perintah migrasi akan gagal jika file app.yaml Anda berisi salah satu konfigurasi yang tidak didukung berikut:
Layanan masuk:
inbound_services: - warmupHalaman error kustom:
error_handlers: - file: default_error.html - error_code: over_quota file: over_quota.htmlLayanan paket untuk runtime generasi kedua:
app_engine_apis: trueVariabel lingkungan build:
build_env_variables: Foo: BarRuntime generasi pertama:
runtime: python27
Langkah berikutnya
- Pahami cara mengelola layanan Cloud Run.
- Lihat kontrak runtime container Cloud Run untuk memahami persyaratan dan perilaku container di Cloud Run.
- Pelajari cara menyimpan dependensi untuk layanan Anda yang memerlukan kunci API, sandi, atau informasi sensitif lainnya menggunakan Secret Manager.