Menggunakan webhook Azure Container Registry
Registri kontainer Azure menyimpan dan mengelola gambar kontainer Docker pribadi, mirip dengan cara Docker Hub menyimpan gambar Docker publik. Ini juga dapat meng-host repositori untuk chart Helm (pratinjau), format paket untuk menyebarkan aplikasi ke Kubernetes. Anda dapat menggunakan webhook untuk memicu peristiwa ketika tindakan tertentu terjadi di salah satu repositori registri Anda. Webhook dapat menanggapi peristiwa di tingkat registri, atau mereka dapat tercakup ke tag repositori tertentu. Dengan registri replikasi geografis, Anda mengonfigurasi setiap webhook untuk merespons peristiwa di replika wilayah tertentu.
Titik akhir webhook harus dapat diakses secara publik dari registri. Anda dapat mengkonfigurasi permintaan webhook registri untuk mengautentikasi ke titik akhir yang aman.
Untuk detail tentang permintaan webhook, lihat Referensi skema webhook Azure Container Registry.
Prasyarat
- Azure Container Registry - Membuat registri kontainer pada langganan Azure Anda. Misalnya, gunakan portal Microsoft Azure atau Azure CLI. Tingkat layanan Azure Container Registry memiliki kuota webhooks yang berbeda.
- Docker CLI - Untuk mengatur komputer lokal Anda sebagai host Docker dan mengakses perintah Docker CLI, pasang Docker Engine.
Membuat webhook - Portal Microsoft Azure
- Masuk ke portal Microsoft Azure.
- Navigasi ke registri kontainer tempat Anda ingin membuat webhook.
- Pada Layanan, pilih Webhook.
- Pilih Tambahkan di toolbar webhook.
- Lengkapi Formulir pembuatan webhook dengan informasi berikut ini:
Nilai | Deskripsi |
---|---|
Nama webhook | Nama yang ingin Anda berikan ke webhook. Nama webhook hanya berisi huruf dan angka, dan panjangnya harus 5-50 karakter. |
Lokasi | Untuk registri yang direplikasi secara geografis, tentukan wilayah Azure dari replika registri. |
URI Layanan | URI tempat webhook harus mengirim notifikasi POST. |
Header kustom | Header yang ingin Anda berikan bersama dengan permintaan POST. Header harus dalam format "kunci: nilai". |
Memicu tindakan | Tindakan yang memicu webhook. Tindakan ini termasuk pendorongan gambar, penghapusan gambar, pendorongan bagan Helm, penghapusan bagan Helm, dan karantina gambar. Anda dapat memilih satu atau beberapa tindakan untuk memicu webhook. |
Status | Status webhook setelah dibuat. Status diaktifkan secara default. |
Cakupan | Ruang lingkup tempat webhook bekerja. Jika tidak ditentukan, cakupannya adalah untuk semua peristiwa dalam registri. Ini dapat ditentukan untuk repositori atau tag dengan menggunakan format "repositori:tag", atau "repositori:*" untuk semua tag dalam sebuah repositori. |
Contoh formulir webhook:
Membuat webhook - Portal Microsoft Azure
Untuk membuat webhook menggunakan Azure CLI, gunakan perintah buat webhook az acr. Perintah berikut akan membuat webhook untuk semua peristiwa penghapusan gambar di registri mycontainerregistry:
az acr webhook create --registry mycontainerregistry --name myacrwebhook01 --actions delete --uri http://webhookuri.com
Menguji Webhook
portal Microsoft Azure
Sebelum menggunakan webhook, Anda dapat mengujinya dengan tombol Ping. Ping mengirimkan permintaan POST generik ke titik akhir yang ditentukan dan mencatat responsnya. Menggunakan fitur ping dapat membantu Anda memverifikasi bahwa Anda telah mengkonfigurasi webhook dengan benar.
- Pilih webhook yang ingin Anda uji.
- Di toolbar atas, pilih Ping.
- Periksa respons titik akhir di kolom STATUS HTTP.
Azure CLI
Untuk menguji webhook ACR dengan Azure CLI, gunakan perintah ping webhook az acr.
az acr webhook ping --registry mycontainerregistry --name myacrwebhook01
Untuk melihat hasilnya, gunakan perintah daftar peristiwa webhook az acr.
az acr webhook list-events --registry mycontainerregistry08 --name myacrwebhook01
Hapus webhook
portal Microsoft Azure
Setiap webhook dapat dihapus dengan memilih webhook lalu tombol Hapus di portal Microsoft Azure.
Azure CLI
az acr webhook delete --registry mycontainerregistry --name myacrwebhook01
Langkah berikutnya
Referensi skema webhook
Untuk detail tentang format dan properti payload peristiwa JSON yang dikeluarkan oleh Azure Container Registry, lihat referensi skema webhook:
Referensi skema webhook Azure Container Registry
Peristiwa Azure Event Grid
Selain peristiwa webhook registri asli yang dibahas dalam artikel ini, Azure Container Registry dapat mengeluarkan peristiwa ke Azure Event Grid:
Mulai cepat: Mengirim peristiwa registri kontainer ke Azure Event Grid