Container Registry Edisi Perusahaan menyediakan proses integrasi berkelanjutan otomatis yang aman dan efisien dari kode sumber hingga gambar kontainer. Layanan ini juga mendukung pembuatan gambar otomatis dan pengiriman ke repositori gambar berdasarkan aturan Dockerfile. Topik ini menjelaskan cara menggunakan instans Container Registry Edisi Perusahaan untuk membangun gambar kontainer.
Prasyarat
Instans Container Registry Edisi Perusahaan telah dibuat. Untuk informasi lebih lanjut, lihat bagian "Langkah 1: Buat instans Container Registry Edisi Perusahaan" pada topik Dorong gambar ke instans Container Registry Edisi Perusahaan dan tarik gambar dari instans tersebut.
Dockerfile yang digunakan untuk membangun gambar telah dibuat.
Informasi latar belakang
Layanan pembuatan gambar Container Registry menawarkan fitur keamanan, stabilitas, dan percepatan cerdas:
Keamanan: Setiap tugas pembuatan gambar didistribusikan ke lingkungan eksklusif untuk Akun Alibaba Cloud guna memastikan keamanan.
Stabilitas: Jika Anda menggunakan repositori kode sumber untuk membangun beberapa gambar, waktu yang diperlukan untuk setiap tugas pembuatan gambar tetap stabil karena tugas dijalankan dalam lingkungan eksklusif Akun Alibaba Cloud Anda.
Percepatan Cerdas:
Secara default, sistem menggunakan alat pembuatan efisien BuildKit. BuildKit memiliki kemampuan pembuatan yang kuat, terutama untuk skenario multi-tahap, serta mendukung fitur pembuatan yang kaya.
Sistem menampung gambar dasar umum. Selama pembuatan gambar, sistem dapat menggunakan gambar dasar tanpa perlu menariknya, sehingga mengurangi periode pembuatan.
Sistem dapat menggunakan cache jarak jauh untuk mempercepat pembuatan gambar.
Container Registry mendukung berbagai platform hosting kode dan percepatan pembuatan gambar.
Platform hosting kode: Tabel berikut mencantumkan platform hosting kode yang didukung.
Platform kode
Versi platform kode
Metode pengikatan
Batas pemicu pembuatan
Gitee
Konfigurasi untuk instans Edisi Pribadi tidak didukung.
Semua
Otorisasi OAuth Gitee
Tidak ada
GitHub
Hanya GitHub Personal yang didukung
Otorisasi OAuth GitHub
Tidak ada
GitLab
Semua
Token akses pribadi
Tidak ada
Bitbucket
Semua
Otorisasi OAuth Gitee
Tidak ada
Pembuatan gambar yang dipercepat: Sistem memungkinkan Anda memuat sumber daya gambar kontainer sesuai permintaan. Versi yang dipercepat dari gambar kontainer secara otomatis dibuat setelah gambar didorong. Untuk informasi lebih lanjut, lihat Muat sumber daya gambar kontainer sesuai permintaan.
Langkah 1: Ikat instans Anda ke platform hosting kode sumber
Sebelum membangun gambar, Anda harus mengikat instans Anda ke platform hosting kode sumber. Untuk informasi lebih lanjut, lihat Ikat platform hosting kode sumber.
Anda tidak dapat membangun gambar dari repositori kode lokal.
Untuk informasi tentang cara mengikat repositori GitLab pribadi dalam virtual private cloud (VPC), lihat Bangun gambar kontainer dalam VPC.
Langkah 2: Buat namespace
Masuk ke Konsol Container Registry.
Di bilah navigasi atas, pilih wilayah.
Di panel navigasi sisi kiri, klik Instances.
Pada halaman Instances, klik instans Container Registry Edisi Perusahaan tempat Anda ingin membuat namespace.
Di panel navigasi sisi kiri halaman manajemen instans Edisi Perusahaan, pilih .
Pada halaman Namespace, klik Create Namespace.
Di sidebar Create Namespace, konfigurasikan Namespace dan Automatically Create Repository. Lalu, klik Confirm.
Langkah 3: Buat repositori gambar
Gambar yang dipercepat hanya dapat dibangun pada instans Container Registry Edisi Standar dan Edisi Lanjutan. Kami merekomendasikan agar Anda meningkatkan instans Edisi Dasar ke instans Edisi Standar atau Edisi Lanjutan.
Buat repositori gambar dan ikat ke repositori kode. Semua gambar yang dihasilkan dari repositori kode akan didorong ke repositori gambar.
Masuk ke Konsol Container Registry.
Di bilah navigasi atas, pilih wilayah.
Di panel navigasi sisi kiri, klik Instances.
Pada halaman Instances, klik instans Edisi Perusahaan yang ingin Anda kelola.
Di panel navigasi sisi kiri halaman manajemen instans Edisi Perusahaan, pilih .
- Pada halaman Repositories, klik Create Repository.
Di langkah Repository Info, konfigurasikan parameter Namespace, Repository Name, Repository Type, Tags, Accelerated Image, Summary, dan Description. Lalu, klik Next.
Di langkah Code Source, konfigurasikan Code Source, Build Settings, dan Build Rules, lalu klik Create Repository.
Parameter
deskripsi
Sumber Kode
Sumber kode.
Pengaturan Pembuatan
Automatically Build Images When Code Changes: Aturan pembuatan dipicu secara otomatis ketika kode dikomit dari cabang.
Bangun Dengan Server yang Ditempatkan di Luar Daratan Tiongkok: Selama proses pembuatan, pembuatan dilakukan di pusat data luar negeri dan, setelah selesai, didorong ke wilayah yang ditentukan. Jika proyek Dockerfile Anda perlu mengunduh file dari situs asing tetapi konektivitas jaringan lintas batas tidak stabil, Anda dapat mengaktifkan Build With Servers Deployed Outside Chinese Mainland.
Build Without Cache: Sistem menarik gambar dasar dari repositori kode sumber setiap kali gambar dibangun. Ini mungkin memperlambat proses pembuatan. Anda dapat menonaktifkan Build Without Cache untuk mempercepat pembuatan gambar.
Pada halaman Repositories, klik repositori gambar yang dibuat. Jika Build ditampilkan di panel navigasi sisi kiri halaman manajemen repositori, repositori gambar diikat ke repositori kode sumber.
Langkah 4: Bangun gambar
Jika Anda tidak dapat menemukan Build di halaman manajemen repositori, instans Edisi Perusahaan gagal diikat ke platform hosting kode sumber. Anda dapat merujuk ke Langkah 1 untuk mengikat ulang instans ke platform hosting kode sumber.
Masuk ke Konsol Container Registry.
Di bilah navigasi atas, pilih wilayah.
Di panel navigasi sisi kiri, klik Instances.
Pada halaman Instances, klik instans Edisi Perusahaan yang ingin Anda kelola.
Di panel navigasi sisi kiri halaman manajemen instans Container Registry Edisi Perusahaan, pilih .
Pada halaman Repositories, temukan repositori gambar yang dibuat dan klik Manage di kolom Actions.
Di panel navigasi sisi kiri, klik Build. Di bagian Build Rules, klik Add Build Rule. Di langkah Build Information dari wizard Tambah Aturan Pembuatan, konfigurasikan parameter dan lalu klik Next. Tabel berikut menjelaskan parameter.
Parameter
Deskripsi
Type
Tentukan tipe repositori kode sumber. Nilai valid: Cabang dan Tag.
Branch/Tag
Pilih atau masukkan cabang atau tag. Ekspresi reguler didukung. Jika Anda menentukan ekspresi reguler release-(?<imageTag>\w*), sistem secara otomatis membangun gambar V1 ketika kode sumber di cabang release-v1 diperbarui. Anda tidak dapat membangun gambar secara manual. Untuk informasi lebih lanjut tentang cara menentukan ekspresi reguler, lihat Gunakan ekspresi reguler dalam grup penangkapan bernama.
CatatanSetelah Anda menentukan ekspresi reguler, gambar hanya dapat dibangun oleh sistem. Anda tidak dapat membangun gambar secara manual.
Build Context Directory
Tentukan direktori tempat Dockerfile berada. Ini adalah subdirektori dari direktori cabang atau tag. Misalnya, jika direktori cabang adalah master/ dan Dockerfile berada di direktori master/, nilainya adalah master/Dockerfile.
Dockerfile Filename
Tentukan nama Dockerfile. Nama defaultnya adalah Dockerfile.
Di langkah Tag, konfigurasikan parameter, klik Save, dan lalu klik Next.
CatatanKlik Add Configuration untuk menambahkan tag citra. Anda dapat menambahkan hingga tiga tag citra.
Parameter
Deskripsi
Image Tag
Tag gambar. Contoh: latest. Anda dapat mengaktifkan grup penangkapan bernama. Misalnya, jika Anda menentukan grup penangkapan bernama untuk Branch/Tag, Anda dapat menggunakan konten yang ditangkap.
Build Time
Waktu (UTC+8) ketika kode sumber didorong. Contoh: 20201015 atau 202010151613.
CatatanParameter ini opsional. Jika Anda mengatur parameter ini, hanya sistem yang dapat membangun gambar. Anda tidak dapat membangun gambar secara manual.
Commit ID
Jumlah karakter yang akan diperoleh dari ID komit kode yang paling baru didorong. Secara default, enam karakter pertama digunakan. Anda dapat menyesuaikan slider untuk mengubah jumlah karakter.
CatatanParameter ini opsional. Jika Anda mengatur parameter ini, hanya sistem yang dapat membangun gambar. Anda tidak dapat membangun gambar secara manual.
Di langkah Build Configurations, konfigurasikan parameter dan lalu klik Confirm. Tabel berikut menjelaskan parameter.
Parameter
Deskripsi
Build Architecture
Arsitektur untuk membangun gambar. Anda dapat memilih beberapa arsitektur. Jika Anda memilih beberapa arsitektur, beberapa gambar kontainer untuk arsitektur tersebut dibangun untuk setiap tag gambar.
Build Parameters
Parameter runtime pembuatan gambar. Setiap parameter pembuatan adalah pasangan kunci-nilai yang peka huruf besar-kecil. Anda dapat mengonfigurasi maksimal 20 parameter pembuatan. Anda dapat mengatur parameterpembuatan untuk memodifikasi variabel lingkungan dalam Dockerfile dan membuat Dockerfile yang sama menunjukkan status yang berbeda.
Picu aturan pembuatan gambar.
Anda dapat menggunakan salah satu dari metode berikut untuk memicu aturan pembuatan gambar:
Di bagian Build Rules halaman Build, temukan aturan pembuatan gambar dan klik Build di kolom Actions.
Kirim kode ke cabang utama repositori kode sumber untuk memicu aturan pembuatan.
CatatanDi bagian Build Log halaman Build, temukan tugas pembuatan gambar yang dipicu dan klik Cancel di kolom Actions untuk membatalkan tugas pembuatan gambar.
Di bagian Build Log halaman Build, temukan tugas pembuatan gambar yang dipicu dan klik Log di kolom Actions untuk melihat log pembuatan gambar.
Di panel navigasi sisi kiri, klik Image Tag. Jika gambar yang Anda buat ditampilkan, gambar tersebut telah dibangun.
Contoh 1: Bangun gambar berdasarkan cabang bernama main (Anda dapat membangun gambar secara manual)
Konfigurasikan aturan pembuatan berdasarkan pengaturan berikut:
Type: Branch
Branch/Tag: main
Build Context Directory: /
Dockerfile Filename: Dockerfile
Image Tag: latest
Saat Anda mengklik Bangun atau saat kode sumber di cabang utama diperbarui, sistem akan membangun gambar. File bernama Dockerfile di direktori / cabang utama digunakan untuk proses pembuatan gambar tersebut. Tag gambar yang dihasilkan adalah latest. Gambar berikut menunjukkan konfigurasi aturan pembuatan.

Contoh 2: Bangun gambar berdasarkan cabang yang cocok dengan ekspresi reguler (Anda tidak dapat membangun gambar secara manual)
Konfigurasikan aturan pembuatan berdasarkan pengaturan berikut:
Type: Cabang
Branch/Tag: release-(?<imageTag>\w*)
Build Context Directory: /
Dockerfile Filename: Dockerfile
Image Tag: ${imageTag}
Build Time: yyyyMMddHHmm
Commit ID: 30
Jika kode sumber diperbarui di cabang yang namanya dimulai dengan release-, sistem secara otomatis membangun gambar. File bernama Dockerfile di direktori / cabang digunakan untuk membangun gambar.
Sebagai contoh, jika kode sumber di cabang yang namanya dimulai dengan release-v1 diperbarui, aturan reguler release-(?<imageTag>\w*) menangkap v1 di nama cabang, mengirim v1 ke variabel imageTag, dan menggunakan v1 di tag gambar. Dalam contoh ini, tag gambar yang dibuat adalah v1-202010151625-d4ef3dc3b77a011a5779eec7efdd45. Gambar berikut menunjukkan konfigurasi aturan pembuatan.

Apa yang harus dilakukan selanjutnya
Setelah gambar dibangun, Anda dapat melakukan operasi berikut:
Anda dapat menarik gambar dari kluster Container Service for Kubernetes (ACK) tanpa menggunakan rahasia. Untuk informasi lebih lanjut, lihat Gunakan komponen aliyun-acr-credential-helper untuk menarik gambar tanpa menggunakan Secret.
Anda dapat menggunakan gambar untuk membuat aplikasi di kluster ACK. Untuk informasi lebih lanjut, lihat Buat aplikasi tanpa status menggunakan Deployment.
Anda dapat menggunakan fitur percepatan P2P di kluster ACK untuk mempercepat penarikan gambar. Untuk informasi lebih lanjut, lihat Gunakan fitur percepatan P2P di ACK Serverless dan kluster ACK.