Rantai pengiriman di Container Registry (ACR) mengotomatiskan seluruh siklus hidup image—mulai dari build, pemindaian, replikasi, hingga distribusi—di berbagai wilayah dari satu dorongan kode sumber. Setiap tahap dapat diamati dan dilacak, serta Anda dapat mengonfigurasi aturan pemblokiran untuk menghentikan rantai jika image gagal dalam pemindaian keamanan.
Topik ini menjelaskan cara membuat rantai pengiriman dengan kelima tahap yang telah dikonfigurasi.
Prasyarat
Sebelum memulai, pastikan Anda memiliki:
Instans Container Registry Enterprise Edition (Advanced Edition). Hanya Edisi Lanjutan yang mendukung rantai pengiriman. Lihat Buat instans Container Registry Enterprise Edition.
Repository image dengan setidaknya satu image di instans tersebut. Lihat Buat repository dan build image.
Cara kerja
Setiap tahap meneruskan output-nya ke tahap berikutnya:
Image Building — dipicu oleh dorongan kode sumber; menghasilkan image bertag.
Security Scan — memindai image; jika aturan pemblokiran dipicu, rantai berhenti dan tahap selanjutnya tidak dijalankan.
Image replication — menyalin image ke satu atau beberapa instans Enterprise Edition tujuan di berbagai wilayah.
Distribution triggers — memberi notifikasi ke kluster Container Service for Kubernetes (ACK) Anda untuk redeploy menggunakan image baru.
Langkah 1: Buat rantai pengiriman dan konfigurasikan informasi dasar
Login ke Konsol Container Registry.
Di bilah navigasi atas, pilih wilayah.
Di panel navigasi kiri, klik Instances.
Di halaman Instances, klik instans Enterprise Edition yang dituju.
Di panel navigasi kiri halaman manajemen instans, pilih Delivery Chain > Chain.
Di pojok kiri atas halaman Chain, klik Create Delivery Chain.
Di bagian Basic Information, konfigurasikan parameter berikut:
Parameter Deskripsi Name Nama rantai pengiriman. Description Opsional. Deskripsi rantai pengiriman. Scope Pilih namespace dan repository image di dalam namespace tersebut. All Effective Aktifkan untuk menyertakan semua repository di namespace yang dipilih. Nonaktifkan untuk menentukan repository mana yang akan dikecualikan.
Langkah 2: Konfigurasikan aturan pembuatan image
Jika Anda memilih repository image on-premises di Langkah 1, pembuatan image tidak tersedia. Lewati ke Langkah 3.
Di bagian Chain, klik Image Building, lalu klik Add Build Rule.
Di langkah Build Information, konfigurasikan parameter di bawah ini, lalu klik Next.
Parameter Deskripsi Type Jenis repository kode sumber. Nilai yang valid: Branch, Tag. Branch/Tag Pilih atau masukkan nama branch atau tag. Ekspresi reguler didukung. Misalnya, release-(?<imageTag>\w*)memicu build saat branchrelease-v1diperbarui dan menetapkan tag image menjadiv1. Setelah Anda menentukan ekspresi reguler, hanya sistem yang dapat memicu build — build manual dinonaktifkan.Build Context Directory Path relatif ke direktori yang berisi Dockerfile Anda, relatif terhadap root branch kode. Dockerfile Filename Nama Dockerfile. Default: Dockerfile.Di langkah Tag, konfigurasikan pengaturan tag image, klik Save, lalu klik Next.
Klik Add Configuration untuk menambahkan konfigurasi tag. Maksimal tiga tag image didukung.
Parameter Deskripsi Image Tag Tag untuk image yang dibuat. Contoh: latest. Jika Anda menggunakan named capturing group di Branch/Tag, Anda dapat mereferensikan nilai yang ditangkap di sini.Build Time Opsional. Menambahkan waktu dorongan kode sumber (UTC+8) ke tag. Format contoh: 20201015atau202010151613. Jika diatur, hanya sistem yang dapat memicu build.Commit ID Opsional. Menambahkan karakter dari Commit ID terbaru ke tag. Default: enam karakter pertama; dapat disesuaikan dengan slider. Jika diatur, hanya sistem yang dapat memicu build. Di langkah Build Configurations, konfigurasikan parameter di bawah ini, lalu klik Confirm.
Parameter Deskripsi Build Architecture Arsitektur target. Pilih beberapa untuk menghasilkan satu image per arsitektur per tag. Build Parameters Parameter build runtime dalam bentuk pasangan kunci-nilai. Sensitif terhadap huruf besar/kecil. Maksimal 20 pasangan.
Output langkah ini: Image bertag yang disimpan di repository yang ditentukan di Langkah 1. Image ini menjadi input untuk tahap pemindaian keamanan.
Langkah 3: Konfigurasikan aturan pemblokiran untuk pemindaian keamanan image
Pemindaian keamanan memeriksa setiap image sebelum direplikasi atau didistribusikan. Jika aturan pemblokiran dipicu, rantai berhenti untuk semua image.
Di bagian Chain, klik Security Scan.
Di bagian Node configuration, konfigurasikan hal berikut: Security engine — pilih mesin pemindaian; Block strategy — pilih cara rantai merespons ketika aturan dipicu:
Opsi Deskripsi Security Center Scan Engine Mendeteksi kerentanan dan memungkinkan Anda memperbaikinya dengan beberapa klik di Security Center. Memerlukan Edisi Ultimate Security Center. Jika Security Center belum diaktifkan di wilayah saat ini, opsi ini tidak ditampilkan. Lihat Beli Security Center. Trivy Scan Engine Tidak mendukung perbaikan kerentanan satu-klik melalui Container Registry. Strategi Perilaku Blocking Menghentikan semua tahap selanjutnya untuk semua image ketika aturan dipicu. Tentukan ambang batas Severity dan Vulnerability, serta konfigurasikan apa yang terjadi pada image asli (hapus atau backup). Non-blocking Semua tahap selanjutnya tetap berjalan terlepas dari hasil pemindaian.
Output langkah ini: Jika strategi Non-blocking atau tidak ada aturan yang dipicu, image diteruskan ke tahap replikasi. Jika Blocking dipicu, rantai berakhir di sini.
Langkah 4: Konfigurasikan aturan replikasi image
Setelah image lolos pemindaian keamanan, replikasi secara otomatis menyalinnya ke instans Enterprise Edition tujuan di wilayah lain.
Di bagian Chain, klik Trigger Synchronization, lalu klik Create Rule.
Di kotak dialog Create Rule, masukkan nama aturan dan tentukan instans tujuan, lalu klik Next.
Pilih wilayah dan instans Enterprise Edition yang sudah ada sebagai tujuan.
Jika tidak ada instans yang sesuai, klik Create Instance. Lihat Buat instans Container Registry Enterprise Edition.
Jika akses Internet dinonaktifkan, image dapat direplikasi secara otomatis di berbagai wilayah.
Di wizard Replication Information, konfigurasikan cakupan replikasi, lalu klik Create Rule.
Parameter Deskripsi Replication Level Cakupan replikasi. Nilai yang valid: Namespaces (semua repository di namespace), Repository (repository tertentu). Source Address Namespace dan repository tempat replikasi berasal. Masukkan ekspresi reguler untuk memfilter tag image mana yang akan direplikasi. Default: semua tag. Bidang repository hanya tersedia ketika Replication Level diatur ke Repository.
Output langkah ini: Image tersedia di semua instans tujuan yang dikonfigurasi dan siap untuk didistribusikan.
Langkah 5: Konfigurasikan pemicu distribusi
Pemicu distribusi memberi notifikasi ke kluster ACK Anda untuk menarik image baru dan redeploy aplikasi secara otomatis.
Di bagian Chain, klik Trigger, lalu klik Create.
Di kotak dialog Create Trigger, konfigurasikan parameter berikut, lalu klik Confirm.
Parameter Deskripsi Name Nama pemicu. Trigger URL URL callback. Dapatkan URL ini dari konfigurasi kluster ACK Anda. Trigger Kapan distribusi dipicu. Nilai yang valid: All (setiap pembaruan image memicu distribusi), By RegExp (hanya image dengan tag yang cocok dengan ekspresi reguler), By Tags (hanya image dengan tag dalam daftar yang ditentukan). Di halaman Create Delivery Chain, klik Create.
Hasil
Rantai pengiriman muncul di halaman Chain.
Untuk memantau eksekusi, login ke instans Enterprise Edition Anda dan buka halaman Record. Di sana Anda dapat melihat status dan hasil setiap tahap. Setelah eksekusi berhasil, verifikasi bahwa image yang diperbarui telah dideploy di kluster ACK Anda.
Langkah berikutnya
Untuk memicu rantai, dorong perubahan kode sumber ke branch atau tag yang dikonfigurasi.
Untuk melihat hasil pemindaian, buka halaman Record dan periksa output tahap pemindaian keamanan.
Untuk menambahkan lebih banyak instans tujuan, ulangi Langkah 4 untuk setiap wilayah tambahan.