Halaman ini menjelaskan cara menggunakan Cloud Deploy untuk menempatkan aplikasi Anda ke lingkungan runtime target yang diinginkan. Sebelum melakukannya, Anda harus membuat target dan pipeline pengiriman.
Sebelum memulai
Bagian ini menjelaskan hal-hal yang perlu Anda siapkan sebelum dapat men-deploy aplikasi menggunakan Cloud Deploy.
Pastikan akun layanan eksekusi Anda memiliki peran dan izin IAM yang diperlukan.
Buat target dan pipeline pengiriman.
Cloud Deploy dapat men-deploy ke Google Kubernetes Engine, Cloud Run, cluster terhubung GKE, dan target kustom. Konfigurasi target berbeda-beda, bergantung pada target deployment Anda.
Memiliki image dan manifes container Anda.
Anda memerlukan satu atau beberapa image container untuk di-deploy dan satu atau beberapa manifes Kubernetes (untuk di-deploy ke GKE) atau file YAML layanan (untuk di-deploy ke Cloud Run).
Anda memerlukan pipeline continuous integration, atau proses lain, untuk membangun dan menempatkan gambar Anda. Alat CI Anda dapat berupa Cloud Build, Jenkins, atau apa pun yang menghasilkan image container yang dapat Anda berikan ke pipeline pengiriman Cloud Deploy.
Memiliki file konfigurasi
skaffold.yaml.Cloud Deploy memanggil
skaffold renderuntuk merender manifes Kubernetes menggunakan file ini danskaffold applyuntuk men-deploy-nya ke target Anda. Untuk melakukannya, Skaffold memerlukan setidaknyaskaffold.yamlminimal. Anda bisa mendapatkannya dengan salah satu dari dua cara berikut:Buat sendiri.
Perhatikan bahwa file
skaffold.yamlharus mereferensikanapiVersionyang didukung oleh Skaffold di baris pertama, seperti dalam contoh ini:`apiVersion: skaffold/v4beta7`Minta Gemini membuatnya untuk Anda.
Jika Anda belum memiliki file
skaffold.yaml, Anda dapat meminta Cloud Deploy membuatnya untuk Anda. File ini cocok untuk proses aktivasi, pembelajaran, atau demonstrasi Cloud Deploy, dan tidak boleh digunakan untuk workload produksi.
Lihat Menggunakan Skaffold dengan Cloud Deploy untuk mengetahui detail selengkapnya. Selain itu, Mengelola manifes di Cloud Deploy memiliki detail selengkapnya tentang penggunaan Skaffold dan Cloud Deploy dengan alat pengelolaan manifes, seperti Helm, Kustomize, dan kpt.
Menyiapkan Cloud Deploy untuk lingkungan runtime pilihan Anda
Cloud Deploy dapat men-deploy aplikasi Anda ke salah satu lingkungan runtime berikut:
Memanggil pipeline pengiriman untuk membuat rilis
Setelah mengonfigurasi Cloud Deploy untuk men-deploy ke runtime, Anda kini dapat mengirimkan aplikasi untuk di-deploy sesuai dengan pipeline pengiriman yang Anda buat.
Jalankan proses continuous integration (CI) reguler Anda, dengan membuat artefak yang dapat di-deploy.
Mulai pipeline pengiriman dengan memanggil Cloud Deploy untuk membuat rilis.
Jalankan perintah berikut dari direktori yang berisi konfigurasi Skaffold Anda:
gcloud deploy releases create RELEASE_NAME --delivery-pipeline=PIPELINE_NAME --region=REGIONKarena perintah ini membuat file tar dari seluruh isi direktori, dan subdirektori apa pun, Anda mungkin tidak ingin menjalankan perintah ini dari direktori beranda atau root. Jalankan perintah dari direktori yang berisi konfigurasi Skaffold Anda, atau sertakan opsi
--source=, yang dijelaskan nanti.Dalam perintah ini...
RELEASE_NAMEadalah nama yang akan diberikan pada rilis ini. Nama harus unik di antara semua rilis untuk pipeline pengiriman ini.Anda dapat menentukan nama rilis dinamis dengan menyertakan
'$DATE'atau'$TIME'atau keduanya. Misalnya, jika Anda memanggil perintah ini pada pukul 15.07 UTC,'rel-$TIME'akan di-resolve menjadirel-1507.'$DATE'dan'$TIME'harus dalam tanda petik tunggal, dan waktunya adalah waktu UTC di mesin tempat Anda memanggil perintah.PIPELINE_NAMEadalah nama pipeline pengiriman yang akan mengelola deployment rilis ini melalui progres target. Nama ini harus cocok dengan kolomnamedalam definisi pipeline.REGIONadalah nama region tempat Anda membuat rilis, misalnyaus-central1. Wajib diisi.
Perintah ini mengupload file tar yang berisi konfigurasi Anda ke bucket Cloud Storage dan membuat rilis. Cloud Deploy juga otomatis membuat peluncuran dan men-deploy image Anda ke target pertama yang ditentukan dalam pipeline pengiriman.
Selain parameter yang ditampilkan dengan perintah ini, Anda dapat menyertakan salah satu opsi berikut:
--images=<name=path/name:$IMAGE_SHA>,<name=path/name:$IMAGE_SHA>Kumpulan penggantian nama gambar ke jalur lengkap gambar.
--build-artifacts=<path/file>Referensi ke file output artefak build Skaffold, yang dapat diteruskan untuk merepresentasikan penggantian jalur lengkap image.
Kedua opsi ini saling eksklusif.
Anda juga dapat menyertakan salah satu flag berikut agar Cloud Deploy membuat file skaffold.yaml untuk Anda: