Men-deploy aplikasi Anda

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 render untuk merender manifes Kubernetes menggunakan file ini dan skaffold apply untuk men-deploy-nya ke target Anda. Untuk melakukannya, Skaffold memerlukan setidaknya skaffold.yaml minimal. Anda bisa mendapatkannya dengan salah satu dari dua cara berikut:

    • Buat sendiri.

      Perhatikan bahwa file skaffold.yaml harus mereferensikan apiVersion yang 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.

  1. Jalankan proses continuous integration (CI) reguler Anda, dengan membuat artefak yang dapat di-deploy.

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

    Karena 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_NAME adalah 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 menjadi rel-1507. '$DATE' dan '$TIME' harus dalam tanda petik tunggal, dan waktunya adalah waktu UTC di mesin tempat Anda memanggil perintah.

    PIPELINE_NAME adalah nama pipeline pengiriman yang akan mengelola deployment rilis ini melalui progres target. Nama ini harus cocok dengan kolom name dalam definisi pipeline.

    REGION adalah nama region tempat Anda membuat rilis, misalnya us-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: