Mengonfigurasi image build dan run

Buildpack menggunakan builder default, yang terdiri dari semua komponen yang diperlukan untuk menjalankan build layanan Anda, termasuk image build dan run:

  • Image build: Digunakan oleh image builder untuk membuat lingkungan build tempat buildpack siklus proses dieksekusi. Di sinilah aplikasi atau fungsi Anda disiapkan untuk containerization.
  • Image run: Image dasar tempat image container layanan Anda dibuat. Ini adalah image yang menghosting aplikasi atau fungsi yang Anda buat.

Kedua image dapat disesuaikan dan diperluas agar sesuai dengan kebutuhan Anda. Misalnya, Anda dapat menyesuaikan image untuk menambahkan paket yang diperlukan untuk membuat layanan, atau menginstal paket sistem agar tersedia saat layanan Anda berjalan.

Sebelum memulai

Anda menggunakan CLI pack untuk membuat layanan secara lokal menjadi image container.

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 contoh dari GitHub.

Menyesuaikan image build dan run

Buildpack menggunakan image builder untuk menyusun layanan Anda menjadi image container. Setelah proses build selesai, aplikasi atau fungsi Anda akan dimasukkan ke dalam image run. Pelajari proses build lebih lanjut di Konsep Buildpack.

Memperluas image builder

Untuk menyesuaikan image builder default:

  1. Buat builder.Dockerfile kustom dari image builder default. Anda harus menentukan tag untuk versi builder yang mendukung image dasar Anda. Misalnya, tag image dasar :v1 tidak didukung oleh tag builder :google-22.

    Contoh:

    FROM gcr.io/buildpacks/builder
    USER root
    RUN apt-get update && apt-get install -y --no-install-recommends \
      subversion && \
      apt-get clean && \
      rm -rf /var/lib/apt/lists/*
    USER cnb
    
  2. Buat image builder kustom Anda dari file builder.Dockerfile:

    docker build -t BUILDER_IMAGE_NAME -f builder.Dockerfile .
    

    Ganti BUILDER_IMAGE_NAME dengan nama yang Anda pilih untuk image builder kustom.

  3. Jalankan perintah pack build dengan image builder kustom Anda untuk membuat image container baru untuk aplikasi atau fungsi Anda:

    pack build SERVICE_IMAGE_NAME --builder BUILDER_IMAGE_NAME
    

    Ganti:

    • SERVICE_IMAGE_NAME dengan nama yang Anda pilih untuk image aplikasi atau fungsi.
    • BUILDER_IMAGE_NAME dengan nama image builder kustom Anda.

Memperluas image run

Untuk menyesuaikan image container yang dijalankan secara default:

  1. Buat run.Dockerfile kustom dari image run default. Anda harus menentukan tag untuk versi builder yang mendukung image run Anda. Misalnya, tag image run :v1 tidak didukung oleh tag builder :google-22.

    Contoh:

    FROM gcr.io/buildpacks/gcp/run
    USER root
    RUN apt-get update && apt-get install -y --no-install-recommends \
      imagemagick && \
      apt-get clean && \
      rm -rf /var/lib/apt/lists/*
    USER 33:33
    
  2. Buat image run kustom Anda dari file run.Dockerfile:

    docker build -t RUN_IMAGE_NAME -f run.Dockerfile .
    

    Ganti RUN_IMAGE_NAME dengan nama yang Anda pilih untuk image run kustom.

  3. Jalankan perintah pack build dengan image run kustom untuk membuat image container baru aplikasi atau fungsi Anda:

    pack build SERVICE_IMAGE_NAME --builder gcr.io/buildpacks/builder:v1 --run-image RUN_IMAGE
    

    Ganti:

    • SERVICE_IMAGE_NAME dengan nama yang Anda pilih untuk image aplikasi atau fungsi.
    • RUN_IMAGE_NAME dengan nama image run kustom Anda.