Salin gambar kontainer dari satu repositori ke repositori lain - Amazon EKS

Bantu tingkatkan halaman ini

Ingin berkontribusi pada panduan pengguna ini? Gulir ke bagian bawah halaman ini dan pilih Edit halaman ini GitHub. Kontribusi Anda akan membantu membuat panduan pengguna kami lebih baik untuk semua orang.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Salin gambar kontainer dari satu repositori ke repositori lain

Topik ini menjelaskan cara menarik gambar kontainer dari repositori yang tidak dapat diakses oleh node Anda dan mendorong gambar ke repositori yang dapat diakses oleh node Anda. Anda dapat mendorong gambar ke Amazon ECR atau repositori alternatif yang dapat diakses oleh node Anda.

Prasyarat
  • DockerMesin dipasang dan dikonfigurasi di komputer Anda. Untuk petunjuk, lihat Menginstal Docker Mesin di Docker dokumentasi.

  • Versi 2.12.3 atau yang lebih baru atau versi 1.27.160 atau yang lebih baru dari AWS Command Line Interface (AWS CLI) diinstal dan dikonfigurasi pada perangkat Anda atauAWS CloudShell. Untuk memeriksa versi Anda saat ini, gunakanaws --version | cut -d / -f2 | cut -d ' ' -f1. Package manager seperti yumapt-get,, atau Homebrew untuk macOS sering beberapa versi di belakang versi terbaruAWS CLI. Untuk menginstal versi terbaru, lihat Menginstal, memperbarui, dan menghapus konfigurasi AWS CLI dan Cepat dengan aws configure di Panduan AWS Command Line Interface Pengguna. AWS CLIVersi yang diinstal AWS CloudShell mungkin juga beberapa versi di belakang versi terbaru. Untuk memperbaruinya, lihat Menginstal AWS CLI ke direktori home Anda di Panduan AWS CloudShell Pengguna.

  • Titik akhir VPC antarmuka untuk Amazon ECR jika Anda ingin node Anda menarik gambar kontainer dari atau mendorong gambar kontainer ke repositori ECR Amazon pribadi melalui jaringan Amazon. Untuk informasi selengkapnya, lihat Membuat titik akhir VPC untuk Amazon ECR di Panduan Pengguna Amazon Elastic Container Registry.

Selesaikan langkah-langkah berikut untuk menarik gambar kontainer dari repositori dan mendorongnya ke repositori Anda sendiri. Dalam contoh berikut yang disediakan dalam topik ini, gambar untuk pembantu Amazon VPC CNI plugin for Kubernetes metrik ditarik. Ketika Anda mengikuti langkah-langkah ini, pastikan untuk mengganti example values dengan nilai Anda sendiri.

Untuk menyalin gambar kontainer dari satu repositori ke repositori lain
  1. Jika Anda belum memiliki repositori Amazon ECR atau repositori lain, buat repositori yang dapat diakses oleh node Anda. Perintah berikut membuat repositori pribadi Amazon ECR. Nama repositori pribadi Amazon ECR harus dimulai dengan huruf. Ini hanya dapat berisi huruf kecil, angka, tanda hubung (-), garis bawah (_), dan garis miring maju (/). Untuk informasi selengkapnya, lihat Membuat repositori pribadi di Panduan Pengguna Amazon Elastic Container Registry.

    Anda dapat mengganti cni-metrics-helper dengan apa pun yang Anda pilih. Sebagai praktik terbaik, buat repositori terpisah untuk setiap gambar. Kami merekomendasikan ini karena tag gambar harus unik dalam repositori. Ganti region-code dengan yang Wilayah AWSdidukung oleh Amazon ECR.

    aws ecr create-repository --region region-code --repository-name cni-metrics-helper
  2. Tentukan registri, repositori, dan tag (opsional) dari gambar yang perlu ditarik oleh node Anda. Informasi ini dalam registry/repository[:tag] format.

    Banyak topik Amazon EKS tentang menginstal gambar mengharuskan Anda menerapkan file manifes atau menginstal gambar menggunakan bagan Helm. Namun, sebelum Anda menerapkan file manifes atau menginstal bagan Helm, pertama-tama lihat konten manifes atau values.yaml file bagan. Dengan begitu, Anda dapat menentukan registri, repositori, dan tag yang akan ditarik.

    Misalnya, Anda dapat menemukan baris berikut dalam file manifes untuk pembantu Amazon VPC CNI plugin for Kubernetes metrik. Registri adalah602401143452.dkr.ecr.us-west-2.amazonaws.com, yang merupakan registri pribadi Amazon ECR. Repositori adalah. cni-metrics-helper

    image: "602401143452.dkr.ecr.us-west-2.amazonaws.com/cni-metrics-helper:v1.12.6"

    Anda dapat melihat variasi berikut untuk lokasi gambar:

    • Hanyarepository-name:tag. Dalam hal ini, docker.io biasanya registri, tetapi tidak Kubernetes ditentukan karena menambahkan ke nama repositori secara default jika tidak ada registri yang ditentukan.

    • repository-name/repository-namespace/repository:tag. Namespace repositori bersifat opsional, tetapi terkadang ditentukan oleh pemilik repositori untuk mengkategorikan gambar. Misalnya, semua gambar Amazon EC2 di Galeri Publik Amazon ECR menggunakan namespace. aws-ec2

    Sebelum menginstal gambar dengan Helm, lihat values.yaml file Helm untuk menentukan lokasi gambar. Misalnya, values.yaml file untuk helper Amazon VPC CNI plugin for Kubernetes metrik menyertakan baris berikut.

    image: region: us-west-2 tag: v1.12.6 account: "602401143452" domain: "amazonaws.com"
  3. Tarik gambar kontainer yang ditentukan dalam file manifes.

    1. Jika Anda menarik dari registri publik, seperti Galeri Publik Amazon ECR, Anda dapat melompat ke sub-langkah berikutnya, karena otentikasi tidak diperlukan. Dalam contoh ini, Anda mengautentikasi ke registri pribadi Amazon ECR yang berisi repositori untuk gambar helper metrik CNI. Amazon EKS mempertahankan gambar di setiap registri yang terdaftar diLihat pendaftar gambar kontainer Amazon untuk add-on Amazon EKS. Anda dapat mengautentikasi ke salah satu pendaftar dengan mengganti 602401143452 dan region-code dengan informasi untuk registri yang berbeda. Registri terpisah ada untuk masing-masing Wilayah AWStempat Amazon EKS didukung.

      aws ecr get-login-password --region region-code | docker login --username AWS --password-stdin 602401143452.dkr.ecr.region-code.amazonaws.com
    2. Tarik gambar. Dalam contoh ini, Anda menarik dari registri yang Anda autentikasi di sub-langkah sebelumnya. Ganti 602401143452 dan region-code dengan informasi yang Anda berikan di sub-langkah sebelumnya.

      docker pull 602401143452.dkr.ecr.region-code.amazonaws.com/cni-metrics-helper:v1.12.6
  4. Tandai gambar yang Anda tarik dengan registri, repositori, dan tag Anda. Contoh berikut mengasumsikan bahwa Anda menarik gambar dari file manifes dan akan mendorongnya ke repositori pribadi Amazon ECR yang Anda buat pada langkah pertama. Ganti 111122223333 dengan ID akun Anda. Ganti region-code dengan tempat Wilayah AWS Anda membuat repositori pribadi Amazon ECR Anda.

    docker tag cni-metrics-helper:v1.12.6 111122223333.dkr.ecr.region-code.amazonaws.com/cni-metrics-helper:v1.12.6
  5. Otentikasi ke registri Anda. Dalam contoh ini, Anda mengautentikasi ke registri pribadi Amazon ECR yang Anda buat pada langkah pertama. Untuk informasi selengkapnya, lihat Autentikasi registri di Panduan Pengguna Amazon Elastic Container Registry.

    aws ecr get-login-password --region region-code | docker login --username AWS --password-stdin 111122223333.dkr.ecr.region-code.amazonaws.com
  6. Dorong gambar ke repositori Anda. Dalam contoh ini, Anda mendorong gambar ke repositori pribadi Amazon ECR yang Anda buat pada langkah pertama. Untuk informasi selengkapnya, lihat Mendorong Docker gambar di Panduan Pengguna Amazon Elastic Container Registry.

    docker push 111122223333.dkr.ecr.region-code.amazonaws.com/cni-metrics-helper:v1.12.6
  7. Perbarui file manifes yang Anda gunakan untuk menentukan gambar pada langkah sebelumnya dengan gambar yang Anda dorong. registry/repository:tag Jika Anda menginstal dengan bagan Helm, sering ada opsi untuk menentukan. registry/repository:tag Saat memasang bagan, tentukan gambar registry/repository:tag yang Anda dorong ke repositori Anda.