Untuk penyebaran yang menggunakan gambar kontainer Docker, kami menyarankan penggunaan paket penyebaran gambar kontainer. Compute Nest menyediakan instans Container Registry (ACR) publik untuk menghosting dan menyimpan gambar, di mana setiap penyedia layanan diberikan namespace unik guna mendukung multi-tenancy. Topik ini menjelaskan kasus penggunaan paket penyebaran gambar kontainer, cara kerjanya, serta langkah-langkah pembuatan dan penggunaannya.
Kasus penggunaan
Untuk penyebaran privat yang menarik gambar kontainer Docker dari internet publik, Anda dapat menggunakan paket penyebaran gambar kontainer dengan kunci sementara.
Paket penyebaran gambar kontainer tidak mendukung auto scaling atau penarikan gambar yang sering setelah penyebaran awal.
Cara kerja
Untuk memastikan multi-tenancy, gambar kontainer dari penyedia layanan berbeda disimpan dalam repository bersama tetapi diisolasi berdasarkan namespace. Setiap penyedia layanan dipetakan ke namespace unik. Saat mengunggah atau menarik gambar, kunci sementara dihasilkan untuk namespace berdasarkan AliUid penyedia layanan. Kontrol akses diterapkan pada tingkat namespace.
Implementasi
Anda harus menentukan dua placeholder berikut dalam templat Resource Orchestration Service (ROS) layanan Anda. Placeholder ini akan diganti dengan nilai aktual selama penyebaran.
-
{{ computenest::acrimage::yourimage }}: Placeholder untuk paket penyebaran gambar kontainer. Selama penyebaran, Compute Nest menggantinya dengan URL gambar kontainer terkait, seperticompute-nest-registry.cn-hangzhou.cr.aliyuncs.com/aliUid1/volcanosh/vc-controller-manager:1.0. -
{{ computenest::acr::dockerconfigjson }}: Placeholder untuk kredensial penarikan gambar. Selama penyebaran, ini diganti dengan kunci sementara yang digunakan untuk menarik gambar kontainer privat.
Contoh YAML berikut menunjukkan cara menggunakan paket penyebaran gambar kontainer. Placeholder kredensial penarikan {{ computenest::acr::dockerconfigjson }} diterapkan sebagai Secret bernama computenestrepo. Secret ini kemudian digunakan sebagai imagePullSecret untuk menarik gambar kontainer setelah placeholder gambar diganti.
Buat dan gunakan
Prasyarat
Anda harus telah menginstal Docker dan membuat gambar Docker. Jika belum, lihat Instal dan gunakan Docker.
Buat paket penyebaran
-
Konfigurasikan informasi dasar untuk paket penyebaran.
-
Login ke Konsol Compute Nest. Di panel navigasi sebelah kiri, pilih Service Deployment Package. Pada tab Packages, klik Create Deployment Package.
-
Di bagian Basic Information, konfigurasikan parameter berikut.
Parameter
Deskripsi
Deployment Package Name
Nama dapat berisi karakter Tionghoa, huruf Inggris, angka, dan garis bawah (_). Nama harus terdiri dari 3 hingga 128 karakter, dengan satu karakter Tionghoa dihitung sebagai dua karakter. Nama paket penyebaran tidak dapat diubah setelah dibuat.
Version Name
Nama dapat berisi karakter Tionghoa, huruf Inggris, angka, dan garis bawah (_). Nama harus terdiri dari 3 hingga 50 karakter, dengan satu karakter Tionghoa dihitung sebagai dua karakter.
Description
Deskripsi harus terdiri dari 10 hingga 500 karakter. Satu karakter Tionghoa dihitung sebagai dua karakter.
Resource Group
Pilih kelompok sumber daya tempat paket penyebaran berada.
Kelompok sumber daya memungkinkan Anda mengelompokkan sumber daya cloud berdasarkan penggunaan, izin, atau kepemilikan, sehingga memungkinkan manajemen sumber daya hierarkis untuk banyak pengguna dan proyek dalam suatu organisasi. Untuk informasi lebih lanjut, lihat kelompok sumber daya.
Tag Settings
Pilih atau masukkan kunci tag dan nilai tag lengkap untuk menambahkan tag ke paket penyebaran. Anda dapat mengikat hingga 20 tag ke suatu sumber daya. Jika tidak tersedia kunci atau nilai tag, Anda dapat membuat tag kustom. Untuk informasi lebih lanjut, lihat Buat dan ikat tag kustom.
-
-
Konfigurasikan paket penyebaran gambar kontainer.
Bagian ini menggunakan contoh pengunggahan gambar
apache-php5.-
Di bagian Deployment Package Content, atur Deployment Package Type menjadi Container Image.
-
Klik Obtain Access Credential untuk mendapatkan perintah mengunggah gambar kontainer Anda ke repository Compute Nest.
Setelah memperoleh kredensial, halaman akan menampilkan perintah yang diperlukan. Pertama, login ke repository gambar Compute Nest dengan perintah
docker login. Selanjutnya, setelah memasukkan Image Name dan Tag (misalnya,latest), tandai gambar lokal Anda menggunakan perintahdocker tag. Terakhir, dorong gambar yang telah ditandai ke repository dengan perintahdocker push.-
Login ke tool command-line Anda dan jalankan perintah login untuk mengakses repository gambar Compute Nest.
docker login compute-nest-registry.cn-hangzhou.cr.aliyuncs.com --username=cr_temp_user --password=<temporary_token> -
Tandai gambar kontainer Anda untuk repository gambar Compute Nest.
docker tag registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5:latest compute-nest-registry.cn-hangzhou.cr.aliyuncs.com/lxepoo/apache-php5:latest -
Dorong gambar kontainer yang telah ditandai.
docker push compute-nest-registry.cn-hangzhou.cr.aliyuncs.com/156345785543852/registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5:latest The push refers to repository [compute-nest-registry.cn-hangzhou.cr.aliyuncs.com/156345785543852/registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5] 6bb81559e239: Pushed cea911103474: Pushed cc523d99ead5: Pushed b00b1ec7b8ef: Pushed 7715ecdbe18e: Pushed 5e755f0e0b5c: Pushed 2a1ce34e52b6: Pushed 28dc854edc91: Pushed 24fc817b31ed: Pushed 7cd75a52f72c: Pushed 05b156d2bc54: Pushed 8cc36998586f: Pushed ab73fa68e475: Pushed dbf739521f53: Pushed 3e019add9ad9: Pushed 18e3751aa1ef: Pushed 4eb95f543324: Pushed a594229cce80: Pushed 69a54e38f06b: Pushed d2808f8124fd: Pushed fe4c16cbf7a4: Pushed latest: digest: sha256:2afcd2b89f317e0570325817f4e8d9c93f12ac781779e365e456ae37aa297f7a size: 4700
-
-
Setelah proses dorong berhasil, di bagian Container Image, pilih gambar yang telah Anda unggah dan klik Publish Deployment Package.
-
-
Lihat paket penyebaran.
-
Kembali ke halaman Service Deployment Package. Klik nama paket penyebaran untuk membuka halaman Deployment Package Details dan lihat statusnya.
-
Saat status berubah menjadi Available, paket telah berhasil dibuat.
-
Gunakan paket penyebaran
Bagian ini menjelaskan cara menggunakan paket penyebaran gambar kontainer saat membuat layanan penyebaran privat.
-
Login ke Konsol Compute Nest.
-
Di panel navigasi sebelah kiri, klik My Services. Pada tab Created Services di halaman My Services, klik Create Service.
-
Di halaman Create New Service, pilih Custom launch sebagai metode pembuatan, pilih Private Service sebagai tipe layanan, lalu klik Next: Configure Settings.
-
Masukkan informasi dasar layanan dan masukkan templat ROS sesuai kebutuhan.
Dalam templat ROS, definisikan placeholder
{{ computenest::acr::dockerconfigjson }}untuk kredensial akses dan placeholder{{ computenest::acrimage::yourimage }}untuk gambar kontainer dalam resourceALIYUN::CS::ClusterApplication. -
Di bagian Deployment Package Association, Set Container Image Association. Klik Select Deployment Package. Di kotak dialog yang muncul, pilih paket penyebaran dan versinya, lalu klik OK untuk mengasosiasikan paket penyebaran gambar kontainer.
-
Setelah membuat dan menguji layanan, lakukan pemeriksaan mandiri terhadap kriteria rilis layanan dan kirimkan untuk ditinjau. Untuk informasi lebih lanjut, lihat Kriteria tinjauan.
-
Setelah layanan dibuat, Anda dapat melihat asosiasi paket penyebaran di halaman detail layanan.
Di halaman detail layanan, klik tab Deployment Package Association, lalu tab Container Image Association untuk melihat asosiasi antara placeholder (seperti
{{ computenest::acrimage::nginx }}) dan informasi paket penyebaran terkaitnya.
Dokumen terkait
-
Untuk informasi lebih lanjut tentang cara membuat layanan di Compute Nest, lihat Buat layanan.
-
Anda dapat menghapus paket penyebaran atau salah satu versinya jika tidak lagi diperlukan. Untuk informasi lebih lanjut, lihat Hapus paket penyebaran.
-
Untuk mengubah konten atau informasi lain dari paket penyebaran, buat versi baru. Untuk informasi lebih lanjut, lihat Buat versi baru.
-
Untuk mengatur konfigurasi pembaruan paket penyebaran, lihat Konfigurasi peningkatan layanan.