Ada lebih banyak contoh AWS SDK yang tersedia di repo Contoh SDK AWS Doc
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh Amazon ECR menggunakan AWS CLI
Contoh kode berikut menunjukkan cara melakukan tindakan dan mengimplementasikan skenario umum dengan menggunakan AWS Command Line Interface With Amazon ECR.
Tindakan merupakan kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.
Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.
Topik
Tindakan
Contoh kode berikut menunjukkan cara menggunakanbatch-check-layer-availability.
- AWS CLI
-
Untuk memeriksa ketersediaan lapisan
batch-check-layer-availabilityContoh berikut memeriksa ketersediaan lapisan dengan intisarisha256:6171c7451a50945f8ddd72f7732cc04d7a0d1f48138a426b2e64387fdeb834eddicluster-autoscalerrepositori.aws ecr batch-check-layer-availability \ --repository-namecluster-autoscaler\ --layer-digestssha256:6171c7451a50945f8ddd72f7732cc04d7a0d1f48138a426b2e64387fdeb834edOutput:
{ "layers": [ { "layerDigest": "sha256:6171c7451a50945f8ddd72f7732cc04d7a0d1f48138a426b2e64387fdeb834ed", "layerAvailability": "AVAILABLE", "layerSize": 2777, "mediaType": "application/vnd.docker.container.image.v1+json" } ], "failures": [] }-
Untuk detail API, lihat BatchCheckLayerAvailability
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanbatch-delete-image.
- AWS CLI
-
Contoh 1: Untuk menghapus gambar
batch-delete-imageContoh berikut menghapus gambar dengan tagprecisedi repositori yang ditentukan dalam registri default untuk akun.aws ecr batch-delete-image \ --repository-nameubuntu\ --image-idsimageTag=preciseOutput:
{ "failures": [], "imageIds": [ { "imageTag": "precise", "imageDigest": "sha256:19665f1e6d1e504117a1743c0a3d3753086354a38375961f2e665416ef4b1b2f" } ] }Contoh 2: Untuk menghapus beberapa gambar
batch-delete-imageContoh berikut menghapus semua gambar yang ditandai denganproddanteam1di repositori yang ditentukan.aws ecr batch-delete-image \ --repository-nameMyRepository\ --image-idsimageTag=prodimageTag=team1Output:
{ "imageIds": [ { "imageDigest": "sha256:123456789012", "imageTag": "prod" }, { "imageDigest": "sha256:567890121234", "imageTag": "team1" } ], "failures": [] }Untuk informasi selengkapnya, lihat Menghapus Gambar di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat BatchDeleteImage
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanbatch-get-image.
- AWS CLI
-
Contoh 1: Untuk mendapatkan gambar
batch-get-imageContoh berikut mendapatkan gambar dengan tagv1.13.6dalam repositori yang disebutcluster-autoscalerdalam registri default untuk akun.aws ecr batch-get-image \ --repository-namecluster-autoscaler\ --image-idsimageTag=v1.13.6Output:
{ "images": [ { "registryId": "012345678910", "repositoryName": "cluster-autoscaler", "imageId": { "imageDigest": "sha256:4a1c6567c38904384ebc64e35b7eeddd8451110c299e3368d2210066487d97e5", "imageTag": "v1.13.6" }, "imageManifest": "{\n \"schemaVersion\": 2,\n \"mediaType\": \"application/vnd.docker.distribution.manifest.v2+json\",\n \"config\": {\n \"mediaType\": \"application/vnd.docker.container.image.v1+json\",\n \"size\": 2777,\n \"digest\": \"sha256:6171c7451a50945f8ddd72f7732cc04d7a0d1f48138a426b2e64387fdeb834ed\"\n },\n \"layers\": [\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 17743696,\n \"digest\": \"sha256:39fafc05754f195f134ca11ecdb1c9a691ab0848c697fffeb5a85f900caaf6e1\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 2565026,\n \"digest\": \"sha256:8c8a779d3a537b767ae1091fe6e00c2590afd16767aa6096d1b318d75494819f\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 28005981,\n \"digest\": \"sha256:c44ba47496991c9982ee493b47fd25c252caabf2b4ae7dd679c9a27b6a3c8fb7\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 775,\n \"digest\": \"sha256:e2c388b44226544363ca007be7b896bcce1baebea04da23cbd165eac30be650f\"\n }\n ]\n}" } ], "failures": [] }Contoh 2: Untuk mendapatkan banyak gambar
batch-get-imageContoh berikut menampilkan rincian semua gambar yang ditandai denganproddanteam1dalam repositori yang ditentukan.aws ecr batch-get-image \ --repository-nameMyRepository\ --image-idsimageTag=prodimageTag=team1Output:
{ "images": [ { "registryId": "123456789012", "repositoryName": "MyRepository", "imageId": { "imageDigest": "sha256:123456789012", "imageTag": "prod" }, "imageManifest": "manifestExample1" }, { "registryId": "567890121234", "repositoryName": "MyRepository", "imageId": { "imageDigest": "sha256:123456789012", "imageTag": "team1" }, "imageManifest": "manifestExample2" } ], "failures": [] }Untuk informasi selengkapnya, lihat Gambar di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat BatchGetImage
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakancomplete-layer-upload.
- AWS CLI
-
Untuk menyelesaikan unggahan lapisan gambar
complete-layer-uploadContoh berikut melengkapi upload layer gambar kelayer-testrepositori.aws ecr complete-layer-upload \ --repository-namelayer-test\ --upload-id6cb64b8a-9378-0e33-2ab1-b780fab8a9e9\ --layer-digests6cb64b8a-9378-0e33-2ab1-b780fab8a9e9:48074e6d3a68b39aad8ccc002cdad912d4148c0f92b3729323eOutput:
{ "uploadId": "6cb64b8a-9378-0e33-2ab1-b780fab8a9e9", "layerDigest": "sha256:9a77f85878aa1906f2020a0ecdf7a7e962d57e882250acd773383224b3fe9a02", "repositoryName": "layer-test", "registryId": "130757420319" }-
Untuk detail API, lihat CompleteLayerUpload
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakancreate-repository.
- AWS CLI
-
Contoh 1: Untuk membuat repositori
create-repositoryContoh berikut membuat repositori di dalam namespace yang ditentukan dalam registri default untuk akun.aws ecr create-repository \ --repository-nameproject-a/sample-repoOutput:
{ "repository": { "registryId": "123456789012", "repositoryName": "project-a/sample-repo", "repositoryArn": "arn:aws:ecr:us-west-2:123456789012:repository/project-a/sample-repo" } }Untuk informasi selengkapnya, lihat Membuat Repositori di Panduan Pengguna Amazon ECR.
Contoh 2: Untuk membuat repositori yang dikonfigurasi dengan immutabilitas tag gambar
create-repositoryContoh berikut membuat repositori dikonfigurasi untuk kekekalan tag dalam registri default untuk akun.aws ecr create-repository \ --repository-nameproject-a/sample-repo\ --image-tag-mutabilityIMMUTABLEOutput:
{ "repository": { "registryId": "123456789012", "repositoryName": "project-a/sample-repo", "repositoryArn": "arn:aws:ecr:us-west-2:123456789012:repository/project-a/sample-repo", "imageTagMutability": "IMMUTABLE" } }Untuk informasi selengkapnya, lihat Mutabilitas Tag Gambar di Panduan Pengguna Amazon ECR.
Contoh 3: Untuk membuat repositori yang dikonfigurasi dengan konfigurasi pemindaian
create-repositoryContoh berikut membuat repositori yang dikonfigurasi untuk melakukan pemindaian kerentanan pada push gambar di registri default untuk akun.aws ecr create-repository \ --repository-nameproject-a/sample-repo\ --image-scanning-configurationscanOnPush=trueOutput:
{ "repository": { "registryId": "123456789012", "repositoryName": "project-a/sample-repo", "repositoryArn": "arn:aws:ecr:us-west-2:123456789012:repository/project-a/sample-repo", "imageScanningConfiguration": { "scanOnPush": true } } }Untuk informasi selengkapnya, lihat Pemindaian Gambar di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat CreateRepository
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-lifecycle-policy.
- AWS CLI
-
Untuk menghapus kebijakan siklus hidup untuk repositori
delete-lifecycle-policyContoh berikut menghapus kebijakan siklus hidup untuk repositori.hello-worldaws ecr delete-lifecycle-policy \ --repository-namehello-worldOutput:
{ "registryId": "012345678910", "repositoryName": "hello-world", "lifecyclePolicyText": "{\"rules\":[{\"rulePriority\":1,\"description\":\"Remove untagged images.\",\"selection\":{\"tagStatus\":\"untagged\",\"countType\":\"sinceImagePushed\",\"countUnit\":\"days\",\"countNumber\":10},\"action\":{\"type\":\"expire\"}}]}", "lastEvaluatedAt": 0.0 }-
Untuk detail API, lihat DeleteLifecyclePolicy
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-repository-policy.
- AWS CLI
-
Untuk menghapus kebijakan repositori untuk repositori
delete-repository-policyContoh berikut menghapus kebijakan repositori untuk repositori.cluster-autoscaleraws ecr delete-repository-policy \ --repository-namecluster-autoscalerOutput:
{ "registryId": "012345678910", "repositoryName": "cluster-autoscaler", "policyText": "{\n \"Version\" : \"2008-10-17\",\n \"Statement\" : [ {\n \"Sid\" : \"allow public pull\",\n \"Effect\" : \"Allow\",\n \"Principal\" : \"*\",\n \"Action\" : [ \"ecr:BatchCheckLayerAvailability\", \"ecr:BatchGetImage\", \"ecr:GetDownloadUrlForLayer\" ]\n } ]\n}" }-
Untuk detail API, lihat DeleteRepositoryPolicy
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-repository.
- AWS CLI
-
Untuk menghapus repositori
delete-repositoryContoh perintah force berikut menghapus repositori yang ditentukan dalam registri default untuk akun.--forceBendera diperlukan jika repositori berisi gambar.aws ecr delete-repository \ --repository-nameubuntu\ --forceOutput:
{ "repository": { "registryId": "123456789012", "repositoryName": "ubuntu", "repositoryArn": "arn:aws:ecr:us-west-2:123456789012:repository/ubuntu" } }Untuk informasi selengkapnya, lihat Menghapus Repositori di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat DeleteRepository
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandescribe-image-scan-findings.
- AWS CLI
-
Untuk menggambarkan temuan pemindaian untuk sebuah gambar
describe-image-scan-findingsContoh berikut mengembalikan temuan pemindaian gambar untuk gambar menggunakan intisari gambar di repositori yang ditentukan dalam registri default untuk akun.aws ecr describe-image-scan-findings \ --repository-namesample-repo\ --image-idimageDigest=sha256:74b2c688c700ec95a93e478cdb959737c148df3fbf5ea706abe0318726e885e6Output:
{ "imageScanFindings": { "findings": [ { "name": "CVE-2019-5188", "description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.", "uri": "http://people.ubuntu.com/~ubuntu-security/cve/CVE-2019-5188", "severity": "MEDIUM", "attributes": [ { "key": "package_version", "value": "1.44.1-1ubuntu1.1" }, { "key": "package_name", "value": "e2fsprogs" }, { "key": "CVSS2_VECTOR", "value": "AV:L/AC:L/Au:N/C:P/I:P/A:P" }, { "key": "CVSS2_SCORE", "value": "4.6" } ] } ], "imageScanCompletedAt": 1579839105.0, "vulnerabilitySourceUpdatedAt": 1579811117.0, "findingSeverityCounts": { "MEDIUM": 1 } }, "registryId": "123456789012", "repositoryName": "sample-repo", "imageId": { "imageDigest": "sha256:74b2c688c700ec95a93e478cdb959737c148df3fbf5ea706abe0318726e885e6" }, "imageScanStatus": { "status": "COMPLETE", "description": "The scan was completed successfully." } }Untuk informasi selengkapnya, lihat Pemindaian Gambar di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat DescribeImageScanFindings
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandescribe-images.
- AWS CLI
-
Untuk mendeskripsikan gambar dalam repositori
describe-imagesContoh berikut menampilkan detail tentang gambar dicluster-autoscalerrepositori dengan tag.v1.13.6aws ecr describe-images \ --repository-namecluster-autoscaler\ --image-idsimageTag=v1.13.6Output:
{ "imageDetails": [ { "registryId": "012345678910", "repositoryName": "cluster-autoscaler", "imageDigest": "sha256:4a1c6567c38904384ebc64e35b7eeddd8451110c299e3368d2210066487d97e5", "imageTags": [ "v1.13.6" ], "imageSizeInBytes": 48318255, "imagePushedAt": 1565128275.0 } ] }-
Untuk detail API, lihat DescribeImages
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandescribe-repositories.
- AWS CLI
-
Untuk menggambarkan repositori dalam registri
Contoh ini menjelaskan repositori dalam registri default untuk akun.
Perintah:
aws ecr describe-repositoriesOutput:
{ "repositories": [ { "registryId": "012345678910", "repositoryName": "ubuntu", "repositoryArn": "arn:aws:ecr:us-west-2:012345678910:repository/ubuntu" }, { "registryId": "012345678910", "repositoryName": "test", "repositoryArn": "arn:aws:ecr:us-west-2:012345678910:repository/test" } ] }-
Untuk detail API, lihat DescribeRepositories
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-authorization-token.
- AWS CLI
-
Untuk mendapatkan token otorisasi untuk registri default Anda
get-authorization-tokenContoh perintah berikut mendapatkan token otorisasi untuk registri default Anda.aws ecr get-authorization-tokenOutput:
{ "authorizationData": [ { "authorizationToken": "QVdTOkN...", "expiresAt": 1448875853.241, "proxyEndpoint": "https://123456789012.dkr.ecr.us-west-2.amazonaws.com" } ] }-
Untuk detail API, lihat GetAuthorizationToken
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-download-url-for-layer.
- AWS CLI
-
Untuk mendapatkan URL unduhan lapisan
get-download-url-for-layerContoh berikut menampilkan URL unduhan lapisan dengan intisarisha256:6171c7451a50945f8ddd72f7732cc04d7a0d1f48138a426b2e64387fdeb834eddicluster-autoscalerrepositori.aws ecr get-download-url-for-layer \ --repository-namecluster-autoscaler\ --layer-digestsha256:6171c7451a50945f8ddd72f7732cc04d7a0d1f48138a426b2e64387fdeb834edOutput:
{ "downloadUrl": "https://prod-us-west-2-starport-layer-bucket.s3.us-west-2.amazonaws.com/e501-012345678910-9cb60dc0-7284-5643-3987-da6dac0465f0/04620aac-66a5-4167-8232-55ee7ef6d565?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20190814T220617Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=AKIA32P3D2JDNMVAJLGF%2F20190814%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Signature=9161345894947a1672467a0da7a1550f2f7157318312fe4941b59976239c3337", "layerDigest": "sha256:6171c7451a50945f8ddd72f7732cc04d7a0d1f48138a426b2e64387fdeb834ed" }-
Untuk detail API, lihat GetDownloadUrlForLayer
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-lifecycle-policy-preview.
- AWS CLI
-
Untuk mengambil detail untuk pratinjau kebijakan siklus hidup
get-lifecycle-policy-previewContoh berikut mengambil hasil pratinjau kebijakan siklus hidup untuk repositori yang ditentukan dalam registri default untuk akun.Perintah:
aws ecr get-lifecycle-policy-preview \ --repository-name"project-a/amazon-ecs-sample"Output:
{ "registryId": "012345678910", "repositoryName": "project-a/amazon-ecs-sample", "lifecyclePolicyText": "{\n \"rules\": [\n {\n \"rulePriority\": 1,\n \"description\": \"Expire images older than 14 days\",\n \"selection\": {\n \"tagStatus\": \"untagged\",\n \"countType\": \"sinceImagePushed\",\n \"countUnit\": \"days\",\n \"countNumber\": 14\n },\n \"action\": {\n \"type\": \"expire\"\n }\n }\n ]\n}\n", "status": "COMPLETE", "previewResults": [], "summary": { "expiringImageTotalCount": 0 } }Untuk informasi selengkapnya, lihat Kebijakan Siklus Hidup di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat GetLifecyclePolicyPreview
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-lifecycle-policy.
- AWS CLI
-
Untuk mengambil kebijakan siklus hidup
get-lifecycle-policyContoh berikut menampilkan rincian kebijakan siklus hidup untuk repositori yang ditentukan dalam registri default untuk akun.aws ecr get-lifecycle-policy \ --repository-name"project-a/amazon-ecs-sample"Output:
{ "registryId": "123456789012", "repositoryName": "project-a/amazon-ecs-sample", "lifecyclePolicyText": "{\"rules\":[{\"rulePriority\":1,\"description\":\"Expire images older than 14 days\",\"selection\":{\"tagStatus\":\"untagged\",\"countType\":\"sinceImagePushed\",\"countUnit\":\"days\",\"countNumber\":14},\"action\":{\"type\":\"expire\"}}]}", "lastEvaluatedAt": 1504295007.0 }Untuk informasi selengkapnya, lihat Kebijakan Siklus Hidup di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat GetLifecyclePolicy
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-login-password.
- AWS CLI
-
Untuk mengambil kata sandi untuk mengautentikasi ke registri
Berikut ini
get-login-passwordmenampilkan kata sandi yang dapat Anda gunakan dengan klien kontainer pilihan Anda untuk mengautentikasi ke registri ECR Amazon mana pun yang dapat diakses oleh kepala sekolah IAM Anda.aws ecr get-login-passwordOutput:
<password>Untuk digunakan dengan CLI Docker, pipa output perintah
get-login-passwordkedocker loginperintah. Saat mengambil kata sandi, pastikan Anda menentukan Wilayah yang sama dengan registri ECR Amazon Anda.aws ecr get-login-password \ --region<region>\|dockerlogin\ --usernameAWS\ --password-stdin<aws_account_id>.dkr.ecr.<region>.amazonaws.com.rproxy.govskope.caUntuk informasi selengkapnya, lihat Otentikasi Registri di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat GetLoginPassword
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-login.
- AWS CLI
-
Untuk mengambil perintah login Docker ke registri default Anda
Contoh ini mencetak perintah yang dapat Anda gunakan untuk masuk ke registri Amazon ECR default Anda.
Perintah:
aws ecr get-loginOutput:
docker login -u AWS -p <password> -e none https://<aws_account_id>.dkr.ecr.<region>.amazonaws.com.rproxy.govskope.caUntuk masuk ke registri akun lain
Contoh ini mencetak satu atau beberapa perintah yang dapat Anda gunakan untuk masuk ke pendaftar Amazon ECR yang terkait dengan akun lain.
Perintah:
aws ecr get-login --registry-ids012345678910023456789012Output:
docker login -u <username> -p <token-1> -e none <endpoint-1> docker login -u <username> -p <token-2> -e none <endpoint-2>-
Untuk detail API, lihat GetLogin
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanget-repository-policy.
- AWS CLI
-
Untuk mengambil kebijakan repositori untuk repositori
get-repository-policyContoh berikut menampilkan rincian tentang kebijakan repositori untuk repositori.cluster-autoscaleraws ecr get-repository-policy \ --repository-namecluster-autoscalerOutput:
{ "registryId": "012345678910", "repositoryName": "cluster-autoscaler", "policyText": "{\n \"Version\" : \"2008-10-17\",\n \"Statement\" : [ {\n \"Sid\" : \"allow public pull\",\n \"Effect\" : \"Allow\",\n \"Principal\" : \"*\",\n \"Action\" : [ \"ecr:BatchCheckLayerAvailability\", \"ecr:BatchGetImage\", \"ecr:GetDownloadUrlForLayer\" ]\n } ]\n}" }-
Untuk detail API, lihat GetRepositoryPolicy
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakaninitiate-layer-upload.
- AWS CLI
-
Untuk memulai unggahan lapisan gambar
initiate-layer-uploadContoh berikut memulai upload layer gambar kelayer-testrepositori.aws ecr initiate-layer-upload \ --repository-namelayer-testOutput:
{ "partSize": 10485760, "uploadId": "6cb64b8a-9378-0e33-2ab1-b780fab8a9e9" }-
Untuk detail API, lihat InitiateLayerUpload
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-images.
- AWS CLI
-
Untuk membuat daftar gambar dalam repositori
list-imagesContoh berikut menampilkan daftar gambar dalamcluster-autoscalerrepositori.aws ecr list-images \ --repository-namecluster-autoscalerOutput:
{ "imageIds": [ { "imageDigest": "sha256:99c6fb4377e9a420a1eb3b410a951c9f464eff3b7dbc76c65e434e39b94b6570", "imageTag": "v1.13.8" }, { "imageDigest": "sha256:99c6fb4377e9a420a1eb3b410a951c9f464eff3b7dbc76c65e434e39b94b6570", "imageTag": "v1.13.7" }, { "imageDigest": "sha256:4a1c6567c38904384ebc64e35b7eeddd8451110c299e3368d2210066487d97e5", "imageTag": "v1.13.6" } ] }-
Untuk detail API, lihat ListImages
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-tags-for-resource.
- AWS CLI
-
Untuk daftar tag untuk repositori
list-tags-for-resourceContoh berikut menampilkan daftar tag yang terkait denganhello-worldrepositori.aws ecr list-tags-for-resource \ --resource-arnarn:aws:ecr:us-west-2:012345678910:repository/hello-worldOutput:
{ "tags": [ { "Key": "Stage", "Value": "Integ" } ] }-
Untuk detail API, lihat ListTagsForResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanput-image-scanning-configuration.
- AWS CLI
-
Untuk memperbarui konfigurasi pemindaian gambar untuk repositori
put-image-scanning-configurationContoh berikut memperbarui konfigurasi pemindaian gambar untuk repositori yang ditentukan.aws ecr put-image-scanning-configuration \ --repository-namesample-repo\ --image-scanning-configurationscanOnPush=trueOutput:
{ "registryId": "012345678910", "repositoryName": "sample-repo", "imageScanningConfiguration": { "scanOnPush": true } }Untuk informasi selengkapnya, lihat Pemindaian Gambar di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat PutImageScanningConfiguration
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanput-image-tag-mutability.
- AWS CLI
-
Untuk memperbarui pengaturan mutabilitas tag gambar untuk repositori
put-image-tag-mutabilityContoh berikut mengkonfigurasi repositori yang ditentukan untuk kekekalan tag. Ini mencegah semua tag gambar dalam repositori ditimpa.aws ecr put-image-tag-mutability \ --repository-namehello-repository\ --image-tag-mutabilityIMMUTABLEOutput:
{ "registryId": "012345678910", "repositoryName": "sample-repo", "imageTagMutability": "IMMUTABLE" }Untuk informasi selengkapnya, lihat Mutabilitas Tag Gambar di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat PutImageTagMutability
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanput-image.
- AWS CLI
-
Untuk menandai ulang gambar dengan manifesnya
put-imageContoh berikut membuat tag baru dihello-worldrepositori dengan manifes gambar yang ada.aws ecr put-image \ --repository-namehello-world\ --image-tag2019.08\ --image-manifestfile://hello-world.manifest.jsonIsi dari
hello-world.manifest.json:{ "schemaVersion": 2, "mediaType": "application/vnd.docker.distribution.manifest.v2+json", "config": { "mediaType": "application/vnd.docker.container.image.v1+json", "size": 5695, "digest": "sha256:cea5fe7701b7db3dd1c372f3cea6f43cdda444fcc488f530829145e426d8b980" }, "layers": [ { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 39096921, "digest": "sha256:d8868e50ac4c7104d2200d42f432b661b2da8c1e417ccfae217e6a1e04bb9295" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 57938, "digest": "sha256:83251ac64627fc331584f6c498b3aba5badc01574e2c70b2499af3af16630eed" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 423, "digest": "sha256:589bba2f1b36ae56f0152c246e2541c5aa604b058febfcf2be32e9a304fec610" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 680, "digest": "sha256:d62ecaceda3964b735cdd2af613d6bb136a52c1da0838b2ff4b4dab4212bcb1c" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 162, "digest": "sha256:6d93b41cfc6bf0d2522b7cf61588de4cd045065b36c52bd3aec2ba0622b2b22b" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 28268840, "digest": "sha256:6986b4d4c07932c680b3587f2eac8b0e013568c003cc23b04044628a5c5e599f" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 35369152, "digest": "sha256:8c5ec60f10102dc8da0649d866c7c2f706e459d0bdc25c83ad2de86f4996c276" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 155, "digest": "sha256:cde50b1c594539c5f67cbede9aef95c9ae321ccfb857f7b251b45b84198adc85" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 28737, "digest": "sha256:2e102807ab72a73fc9abf53e8c50e421bdc337a0a8afcb242176edeec65977e4" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 190, "digest": "sha256:fc379bbd5ed37808772bef016553a297356c59b8f134659e6ee4ecb563c2f5a7" }, { "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", "size": 28748, "digest": "sha256:021db240dfccf5a1aff19507d17c0177e5888e518acf295b52204b1825e8b7ee" } ] }Output:
{ "image": { "registryId": "130757420319", "repositoryName": "hello-world", "imageId": { "imageDigest": "sha256:8ece96b74f87652876199d83bd107d0435a196133af383ac54cb82b6cc5283ae", "imageTag": "2019.08" }, "imageManifest": "{\n \"schemaVersion\": 2,\n \"mediaType\": \"application/vnd.docker.distribution.manifest.v2+json\",\n \"config\": {\n \"mediaType\": \"application/vnd.docker.container.image.v1+json\",\n \"size\": 5695,\n \"digest\": \"sha256:cea5fe7701b7db3dd1c372f3cea6f43cdda444fcc488f530829145e426d8b980\"\n },\n \"layers\": [\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 39096921,\n \"digest\": \"sha256:d8868e50ac4c7104d2200d42f432b661b2da8c1e417ccfae217e6a1e04bb9295\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 57938,\n \"digest\": \"sha256:83251ac64627fc331584f6c498b3aba5badc01574e2c70b2499af3af16630eed\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 423,\n \"digest\": \"sha256:589bba2f1b36ae56f0152c246e2541c5aa604b058febfcf2be32e9a304fec610\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 680,\n \"digest\": \"sha256:d62ecaceda3964b735cdd2af613d6bb136a52c1da0838b2ff4b4dab4212bcb1c\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 162,\n \"digest\": \"sha256:6d93b41cfc6bf0d2522b7cf61588de4cd045065b36c52bd3aec2ba0622b2b22b\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 28268840,\n \"digest\": \"sha256:6986b4d4c07932c680b3587f2eac8b0e013568c003cc23b04044628a5c5e599f\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 35369152,\n \"digest\": \"sha256:8c5ec60f10102dc8da0649d866c7c2f706e459d0bdc25c83ad2de86f4996c276\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 155,\n \"digest\": \"sha256:cde50b1c594539c5f67cbede9aef95c9ae321ccfb857f7b251b45b84198adc85\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 28737,\n \"digest\": \"sha256:2e102807ab72a73fc9abf53e8c50e421bdc337a0a8afcb242176edeec65977e4\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 190,\n \"digest\": \"sha256:fc379bbd5ed37808772bef016553a297356c59b8f134659e6ee4ecb563c2f5a7\"\n },\n {\n \"mediaType\": \"application/vnd.docker.image.rootfs.diff.tar.gzip\",\n \"size\": 28748,\n \"digest\": \"sha256:021db240dfccf5a1aff19507d17c0177e5888e518acf295b52204b1825e8b7ee\"\n }\n ]\n}\n" } }-
Untuk detail API, lihat PutImage
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanput-lifecycle-policy.
- AWS CLI
-
Untuk membuat kebijakan siklus hidup
put-lifecycle-policyContoh berikut membuat kebijakan siklus hidup untuk repositori yang ditentukan dalam registri default untuk akun.aws ecr put-lifecycle-policy \ --repository-name"project-a/amazon-ecs-sample"\ --lifecycle-policy-text"file://policy.json"Isi dari
policy.json:{ "rules": [ { "rulePriority": 1, "description": "Expire images older than 14 days", "selection": { "tagStatus": "untagged", "countType": "sinceImagePushed", "countUnit": "days", "countNumber": 14 }, "action": { "type": "expire" } } ] }Output:
{ "registryId": "<aws_account_id>", "repositoryName": "project-a/amazon-ecs-sample", "lifecyclePolicyText": "{\"rules\":[{\"rulePriority\":1,\"description\":\"Expire images older than 14 days\",\"selection\":{\"tagStatus\":\"untagged\",\"countType\":\"sinceImagePushed\",\"countUnit\":\"days\",\"countNumber\":14},\"action\":{\"type\":\"expire\"}}]}" }Untuk informasi selengkapnya, lihat Kebijakan Siklus Hidup di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat PutLifeCyclePolicy
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanset-repository-policy.
- AWS CLI
-
Untuk menetapkan kebijakan repositori untuk repositori
set-repository-policyContoh berikut melampirkan kebijakan repositori yang terkandung dalam file ke repositori.cluster-autoscaleraws ecr set-repository-policy \ --repository-namecluster-autoscaler\ --policy-textfile://my-policy.jsonIsi dari
my-policy.json:{ "Version" : "2008-10-17", "Statement" : [ { "Sid" : "allow public pull", "Effect" : "Allow", "Principal" : "*", "Action" : [ "ecr:BatchCheckLayerAvailability", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ] } ] }Output:
{ "registryId": "012345678910", "repositoryName": "cluster-autoscaler", "policyText": "{\n \"Version\" : \"2008-10-17\",\n \"Statement\" : [ {\n \"Sid\" : \"allow public pull\",\n \"Effect\" : \"Allow\",\n \"Principal\" : \"*\",\n \"Action\" : [ \"ecr:BatchCheckLayerAvailability\", \"ecr:BatchGetImage\", \"ecr:GetDownloadUrlForLayer\" ]\n } ]\n}" }-
Untuk detail API, lihat SetRepositoryPolicy
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanstart-image-scan.
- AWS CLI
-
Untuk memulai pemindaian kerentanan gambar
start-image-scanContoh berikut memulai pemindaian gambar dan ditentukan oleh intisari gambar di repositori yang ditentukan.aws ecr start-image-scan \ --repository-namesample-repo\ --image-idimageDigest=sha256:74b2c688c700ec95a93e478cdb959737c148df3fbf5ea706abe0318726e885e6Output:
{ "registryId": "012345678910", "repositoryName": "sample-repo", "imageId": { "imageDigest": "sha256:74b2c688c700ec95a93e478cdb959737c148df3fbf5ea706abe0318726e885e6" }, "imageScanStatus": { "status": "IN_PROGRESS" } }Untuk informasi selengkapnya, lihat Pemindaian Gambar di Panduan Pengguna Amazon ECR.
-
Untuk detail API, lihat StartImageScan
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanstart-lifecycle-policy-preview.
- AWS CLI
-
Untuk membuat pratinjau kebijakan siklus hidup
start-lifecycle-policy-previewContoh berikut membuat pratinjau kebijakan siklus hidup yang ditentukan oleh file JSON untuk repositori tertentu.aws ecr start-lifecycle-policy-preview \ --repository-name"project-a/amazon-ecs-sample"\ --lifecycle-policy-text"file://policy.json"Isi dari
policy.json:{ "rules": [ { "rulePriority": 1, "description": "Expire images older than 14 days", "selection": { "tagStatus": "untagged", "countType": "sinceImagePushed", "countUnit": "days", "countNumber": 14 }, "action": { "type": "expire" } } ] }Output:
{ "registryId": "012345678910", "repositoryName": "project-a/amazon-ecs-sample", "lifecyclePolicyText": "{\n \"rules\": [\n {\n \"rulePriority\": 1,\n \"description\": \"Expire images older than 14 days\",\n \"selection\": {\n \"tagStatus\": \"untagged\",\n \"countType\": \"sinceImagePushed\",\n \"countUnit\": \"days\",\n \"countNumber\": 14\n },\n \"action\": {\n \"type\": \"expire\"\n }\n }\n ]\n}\n", "status": "IN_PROGRESS" }-
Untuk detail API, lihat StartLifecyclePolicyPreview
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakantag-resource.
- AWS CLI
-
Untuk menandai repositori
tag-resourceContoh berikut menetapkan tag dengan kunciStagedan nilaiIntegpadahello-worldrepositori.aws ecr tag-resource \ --resource-arnarn:aws:ecr:us-west-2:012345678910:repository/hello-world\ --tagsKey=Stage,Value=IntegPerintah ini tidak menghasilkan output.
-
Untuk detail API, lihat TagResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanuntag-resource.
- AWS CLI
-
Untuk menghapus tag repositori
untag-resourceContoh berikut menghapus tag dengan kunciStagedarihello-worldrepositori.aws ecr untag-resource \ --resource-arnarn:aws:ecr:us-west-2:012345678910:repository/hello-world\ --tag-keysStagePerintah ini tidak menghasilkan output.
-
Untuk detail API, lihat UntagResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanupload-layer-part.
- AWS CLI
-
Untuk mengunggah bagian lapisan
Berikut ini
upload-layer-partmengunggah bagian layer gambar kelayer-testrepositori.aws ecr upload-layer-part \ --repository-namelayer-test\ --upload-id6cb64b8a-9378-0e33-2ab1-b780fab8a9e9\ --part-first-byte0\ --part-last-byte8323314\ --layer-part-blobfile:///var/lib/docker/image/overlay2/layerdb/sha256/ff986b10a018b48074e6d3a68b39aad8ccc002cdad912d4148c0f92b3729323e/layer.b64Output:
{ "uploadId": "6cb64b8a-9378-0e33-2ab1-b780fab8a9e9", "registryId": "012345678910", "lastByteReceived": 8323314, "repositoryName": "layer-test" }-
Untuk detail API, lihat UploadLayerPart
di Referensi AWS CLI Perintah.
-