Menggunakan builder tertentu

Builder adalah image berversi yang berisi semua komponen yang diperlukan untuk membuat container yang dapat dijalankan. Setiap builder menggunakan distribusi OS tertentu sebagai image dasar, seperti Ubuntu 22, dan mendukung beberapa versi bahasa pemrograman.

Anda mungkin harus menyesuaikan versi builder jika memerlukan:

  • Dependensi khusus OS yang hanya tersedia di versi builder tertentu.
  • Versi bahasa pemrograman tertentu yang hanya tersedia dalam versi builder tertentu.

Build lokal

Untuk build lokal, Anda harus menginstal Pack CLI dan Docker.

Sebelum memulai

  1. Instal Docker Community Edition (CE) di workstation Anda. Docker digunakan oleh pack sebagai builder image OCI.
  2. Instal Pack CLI.
  3. Instal alat Kontrol sumber Git untuk mengambil aplikasi contohdari GitHub.

Menentukan versi builder dengan pack

Anda dapat menambahkan flag --builder ke perintah pack untuk menentukan versi builder yang ingin Anda gunakan:

pack build SERVICE_IMAGE_NAME --builder=BUILDER_IMAGE_URL

Ganti:

  • BUILDER_IMAGE_URL dengan URL builder. Contoh: gcr.io/buildpacks/builder:google-22
  • SERVICE_IMAGE_NAME dengan nama yang Anda pilih untuk image aplikasi.

Untuk mempelajari perintah pack lebih lanjut, lihat dokumentasi CLI

Menentukan versi builder dengan project.toml

Anda dapat menggunakan deskripsi project buildpack (project.toml) untuk menetapkan builder saat mem-build dengan pack

  1. Dalam direktori root aplikasi Anda, buat file bernama project.toml dengan konfigurasi berikut:
    [build]
    builder = "BUILDER_IMAGE_URL"
  2. Build aplikasi Anda dengan menjalankan perintah `pack`:
    pack build SERVICE_IMAGE_NAME

Ganti:

  • BUILDER_IMAGE_URL dengan URL builder, misalnya, gcr.io/buildpacks/builder:google-22
  • SERVICE_IMAGE_NAME dengan nama yang Anda pilih untuk image aplikasi.

Build jarak jauh

Anda dapat menggunakan builder khusus dengan Cloud Build dengan menambahkan flag --pack saat mengirimkan project.

Sebelum memulai

  1. Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
  2. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  3. Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.

  4. Enable the Cloud Build and Artifact Registry APIs.

    Enable the APIs

  5. Menginstal Google Cloud CLI.
  6. Untuk initialize gcloud CLI, jalankan perintah berikut:

    gcloud init
  7. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  8. Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.

  9. Enable the Cloud Build and Artifact Registry APIs.

    Enable the APIs

  10. Menginstal Google Cloud CLI.
  11. Untuk initialize gcloud CLI, jalankan perintah berikut:

    gcloud init
  12. Pastikan project Google Cloud Anda memiliki akses ke repositori image container.

    Untuk mengonfigurasi akses ke repositori Docker di Artifact Registry:

    1. Buat repositori Docker baru di lokasi yang sama dengan project Google Cloud Anda.
      gcloud artifacts repositories create REPO_NAME \
      --repository-format=docker \
      --location=REGION --description="DESCRIPTION"
      
      Ganti:
      • REPO_NAME dengan nama yang Anda pilih untuk repositori Docker.
      • REGION dengan lokasi di atau yang terdekat dengan lokasi project Google Cloud Anda.
      • DESCRIPTION dengan deskripsi pilihan Anda.

      Misalnya, untuk membuat repositori docker di us-west2 dengan deskripsi "repository Docker", jalankan:

      gcloud artifacts repositories create buildpacks-docker-repo --repository-format=docker \
      --location=us-west2 --description="Docker repository"
      
    2. Pastikan repositori Anda telah dibuat:
      gcloud artifacts repositories list
      

      Anda akan melihat nama yang dipilih untuk repositori Docker Anda dalam daftar.

Build aplikasi menggunakan builder tertentu

  1. Gunakan gcloud untuk mengirimkan kode sumber aplikasi ke Cloud Build:
    gcloud builds submit --pack builder=BUILDER_IMAGE_URL,image=LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/SERVICE_IMAGE_NAME

    Ganti:

    • BUILDER_IMAGE_URL dengan URL builder. Contoh: gcr.io/buildpacks/builder:google-22
    • LOCATION dengan nama region repositori container Anda. Contoh: us-west2-docker.pkg.dev
    • PROJECT_ID dengan ID project Google Cloud Anda.
    • REPO_NAME dengan nama repositori Docker Anda.
    • SERVICE_IMAGE_NAME dengan nama image container yang Anda buat.

    Untuk mempelajari perintah submit lebih lanjut, lihat dokumentasi Cloud Build.

  2. Pastikan bahwa aplikasi contoh berhasil dipublikasikan ke REPO_NAME:
    gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME

    Ganti:

    • LOCATION dengan nama region repositori container Anda. Contoh: us-west2-docker.pkg.dev
    • PROJECT_ID dengan ID project Google Cloud Anda.
    • REPO_NAME dengan nama repositori Docker Anda.

Men-deploy dari Sumber dengan Cloud Run

Anda dapat menggunakan file deskripsi project buildpack, misalnya project.toml untuk menetapkan builder saat men-deploy dari sumber dengan Cloud Run

  1. Inisialisasi file project.toml di root direktori aplikasi Anda dan tempelkan konfigurasi berikut ke dalamnya:
    [build]
    builder = "BUILDER_IMAGE_URL"
  2. Men-deploy aplikasi Anda dari sumber
    gcloud run deploy --source . SERVICE_IMAGE_NAME

Ganti:

  • BUILDER_IMAGE_URL dengan URL builder. Contoh: gcr.io/buildpacks/builder:google-22
  • SERVICE_IMAGE_NAME dengan nama image container yang Anda buat.