Mempercepat build dengan gambar cache

Anda dapat memanfaatkan gambar cache buildpack untuk menggunakan kembali hasil dari build sebelumnya. Hal ini mengurangi durasi keseluruhan waktu saat Anda mem-build image dengan buildpack Google Cloud, termasuk saat Anda membuat image di lingkungan efemeral seperti Cloud Build.

Langkah-langkah berikut dalam panduan ini berfokus pada build jarak jauh dengan Cloud Build. Untuk build lokal, lihat petunjuk cache image dan halaman pack referensi perintah.

Menggunakan image cache dengan Cloud Build

Anda harus membuat file konfigurasi build, contohnya cloudbuild.yaml, untuk mengaktifkan image cache buildpack di Cloud Build. File konfigurasi build Anda menginstruksikan CLI pack untuk memublikasikan image build ke repositori jarak jauh yang ditentukan. Image build ini kemudian akan digunakan sebagai "gambar cache" untuk build berikutnya.

Perlu diperhatikan bahwa build pertama yang Anda jalankan dengan file konfigurasi build baru menggunakan perintah pack untuk membuat, lalu mengirim cache image build awal ke repositori Anda. Peningkatan performa build hanya terlihat setelah image cache awal tersedia untuk build Anda.

Membuat file konfigurasi build

Untuk menentukan file konfigurasi Cloud Build, Anda harus menulis file YAML dengan langkah build yang menggunakan CLI pack untuk membuat image Anda.

Pada contoh berikut, cloudbuild.yaml build membuat image untuk aplikasi atau fungsi Anda menggunakan buildpack, membuat image cache build awal, dan mengirimkannya ke repositori:

options:
  logging: CLOUD_LOGGING_ONLY
  pool: {}
projectId: PROJECT_ID
steps:
- name: gcr.io/k8s-skaffold/pack
  entrypoint: pack
  args:
  - build
  - LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME
  - --builder
  - gcr.io/buildpacks/builder:latest
  - --cache-image
  - LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/CACHE_IMAGE_NAME:latest
  - --publish 

Ganti:

  • LOCATION dengan nama region repositori container Anda. Contoh: us-west2
  • PROJECT_ID dengan ID project Google Cloud Anda.
  • REPO_NAME dengan nama repositori Docker Anda.
  • IMAGE_NAME dengan nama image container aplikasi atau fungsi Anda.
  • CACHE_IMAGE_NAME dengan nama image cache build Anda.

Lihat juga argumen lain yang didukung yang dapat Anda tentukan dalam file konfigurasi build pada referensi perintah pack build.

Membangun menggunakan image cache dari jarak jauh

Untuk menjalankan build, sertakan tanda perintah --config dan tentukan file konfigurasi Anda. Contohnya, untuk menggunakan file bernama cloudbuild.yaml, Anda dapat menjalankan:

gcloud builds submit --config cloudbuild.yaml --pack image=example-docker.pkg.dev/my-project-id/repo/example-image

Untuk mengetahui informasi selengkapnya tentang build jarak jauh, lihat Mem-build aplikasi atau Mem-build fungsi.