CannotPullContainer kesalahan tugas di Amazon ECS - Amazon Elastic Container Service

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

CannotPullContainer kesalahan tugas di Amazon ECS

Kesalahan berikut menunjukkan bahwa tugas gagal dimulai karena Amazon tidak ECS dapat mengambil gambar kontainer yang ditentukan.

catatan

Versi platform 1.4 Fargate memotong pesan kesalahan yang panjang.

Untuk memeriksa tugas yang dihentikan untuk pesan kesalahan menggunakan AWS Management Console, lihatMelihat Amazon ECS menghentikan kesalahan tugas.

Tugas tidak dapat menarik gambar. Periksa apakah peran memiliki izin untuk menarik gambar dari registri.

Kesalahan ini menunjukkan bahwa tugas tidak dapat menarik gambar yang ditentukan dalam definisi tugas karena masalah izin.

Untuk menyelesaikan masalah ini:

  1. Periksa apakah gambar ada diirepository. Untuk informasi tentang melihat gambar Anda, lihat Melihat detail gambar di Amazon ECR di Panduan Pengguna Amazon Elastic Container Registry.

  2. Verifikasi bahwa role-arn memiliki izin yang benar untuk menarik gambar.

    Untuk informasi tentang cara memperbarui peran, lihat Memperbarui izin untuk peran di Panduan AWS Identity and Access Management Penggunaan.

    Tugas menggunakan salah satu peran berikut:

Tugas tidak dapat menarik 'image-name' dari ECR repositori Amazon ''. repository URI Ada masalah koneksi antara tugas dan AmazonECR. Periksa konfigurasi jaringan tugas Anda.

Kesalahan ini menunjukkan bahwa tugas tidak dapat terhubung ke AmazonECR. Periksa koneksi ke repository URI repositori.

Untuk informasi tentang cara memverifikasi dan menyelesaikan masalah, lihatMemverifikasi Amazon ECS menghentikan konektivitas tugas.

Tugas tidak dapat menarik gambar. Periksa konfigurasi jaringan Anda

Kesalahan ini menunjukkan bahwa tugas tidak dapat terhubung ke AmazonECR.

Untuk informasi tentang cara memverifikasi dan menyelesaikan masalah, lihatMemverifikasi Amazon ECS menghentikan konektivitas tugas.

APIkesalahan (500): Dapatkan https://111122223333.dkr.ecr.us-east-1.amazonaws.com/v2/: net/http: permintaan dibatalkan sambil menunggu koneksi

Kesalahan ini menunjukkan bahwa koneksi habis waktu, karena rute ke internet tidak ada.

Untuk mengatasi masalah ini, Anda dapat:

  • Untuk tugas di subnet publik, tentukan ENABLEDuntuk Tetapkan IP publik secara otomatis saat meluncurkan tugas. Untuk informasi selengkapnya, lihat Menjalankan aplikasi sebagai ECS tugas Amazon.

  • Untuk tugas di subnet pribadi, tentukan DISABLEDuntuk Tetapkan otomatis IP publik saat meluncurkan tugas, dan konfigurasikan NAT gateway di permintaan rute Anda VPC ke internet. Untuk informasi selengkapnya, lihat NATGateway di VPCPanduan Pengguna Amazon.

API kesalahan

Kesalahan ini menunjukkan bahwa ada masalah koneksi dengan ECR titik akhir Amazon.

Untuk informasi tentang cara mengatasi masalah ini, lihat Bagaimana cara mengatasi ECR kesalahan Amazon "CannotPullContainerError: API error” di Amazon ECS di AWS Support situs web.

write /var/lib/docker/tmp/GetImageBlob111111111: tidak ada ruang tersisa di perangkat

Kesalahan ini menunjukkan bahwa ruang disk tidak mencukupi.

Untuk mengatasi masalah ini, kosongkan ruang disk.

Jika Anda menggunakan Amazon yang ECS dioptimalkanAMI, Anda dapat menggunakan perintah berikut untuk mengambil 20 file terbesar di sistem file Anda:

du -Sh / | sort -rh | head -20

Contoh output:

5.7G    /var/lib/docker/containers/50501b5f4cbf90b406e0ca60bf4e6d4ec8f773a6c1d2b451ed8e0195418ad0d2
1.2G    /var/log/ecs
594M    /var/lib/docker/devicemapper/mnt/c8e3010e36ce4c089bf286a623699f5233097ca126ebd5a700af023a5127633d/rootfs/data/logs
...

Dalam beberapa kasus, volume root mungkin diisi oleh wadah yang sedang berjalan. Jika kontainer menggunakan driver log json-file default tanpa batas max-size, terdapat kemungkinan bahwa berkas log bertanggung jawab pada sebagian besar ruang yang digunakan. Anda dapat menggunakan perintah docker ps untuk memverifikasi kontainer yang menggunakan ruang dengan pemetaan nama direktori dari output di atas untuk ID kontainer. Sebagai contoh:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 50501b5f4cbf amazon/amazon-ecs-agent:latest "/agent" 4 days ago Up 4 days ecs-agent

Secara default, saat menggunakan driver json-file log, Docker menangkap output standar (dan kesalahan standar) dari semua kontainer Anda dan menulisnya dalam file menggunakan format. JSON Anda dapat mengatur max-size sebagai pilihan pengandar catatan, yang dapat mencegah berkas log mengambil terlalu banyak ruang. Untuk informasi selengkapnya, lihat Driver logging JSON file di dokumentasi Docker.

Berikut ini adalah cuplikan ketentuan kontainer yang menunjukkan bagaimana menggunakan pilihan ini:

{ "log-driver": "json-file", "log-opts": { "max-size": "256m" } }

Alternatifnya, jika log kontainer Anda menghabiskan terlalu banyak ruang disk, adalah dengan menggunakan driver awslogs log. Driver awslogs log mengirimkan log ke CloudWatch, yang membebaskan ruang disk yang seharusnya digunakan untuk log kontainer Anda pada instance kontainer. Untuk informasi selengkapnya, lihat Kirim ECS log Amazon ke CloudWatch .

ERROR: toomanyrequests: Terlalu Banyak Permintaan atau Anda telah mencapai batas tingkat tarik Anda.

Kesalahan ini menunjukkan bahwa ada pembatasan laju Docker Hub.

Jika Anda menerima salah satu kesalahan berikut, kemungkinan Anda mencapai tingkat batasan Docker Hub:

Untuk informasi selengkapnya tentang tingkat batasan Docker Hub, lihat Memahami pembatasan pada tingkat Docker Hub.

Jika Anda telah meningkatkan batas laju Docker Hub dan Anda perlu mengautentikasi tarikan Docker untuk instance container Anda, lihat Autentikasi registri pribadi untuk instance kontainer.

Tanggapan kesalahan dari daemon: Dapatkanurl: net/http: permintaan dibatalkan sambil menunggu koneksi

Kesalahan ini menunjukkan bahwa koneksi habis waktu, karena rute ke internet tidak ada.

Untuk mengatasi masalah ini, Anda dapat:

  • Untuk tugas di subnet publik, tentukan ENABLEDuntuk Tetapkan IP publik secara otomatis saat meluncurkan tugas. Untuk informasi selengkapnya, lihat Menjalankan aplikasi sebagai ECS tugas Amazon.

  • Untuk tugas di subnet pribadi, tentukan DISABLEDuntuk Tetapkan otomatis IP publik saat meluncurkan tugas, dan konfigurasikan NAT gateway di permintaan rute Anda VPC ke internet. Untuk informasi selengkapnya, lihat NATGateway di VPCPanduan Pengguna Amazon.

ref pull telah dicoba ulang 1 kali: gagal menyalin:: gagal buka httpReaderSeeker: kode status tak terduga

Kesalahan ini menunjukkan bahwa ada kegagalan saat menyalin gambar.

Untuk mengatasi masalah ini, tinjau salah satu artikel berikut:

akses tarik ditolak

Kesalahan ini menunjukkan bahwa tidak ada akses ke gambar.

Untuk mengatasi masalah ini, Anda mungkin perlu mengautentikasi klien Docker Anda dengan Amazon ECR Untuk informasi selengkapnya, lihat Autentikasi registri pribadi di Panduan Pengguna Amazon ECR.

perintah tarik gagal: panik: kesalahan runtime: alamat memori tidak valid atau dereferensi pointer nil

Kesalahan ini menunjukkan bahwa tidak ada akses ke gambar karena alamat memori yang tidak valid atau dereferensi pointer nil.

Untuk menyelesaikan masalah ini:

  • Periksa apakah Anda memiliki aturan grup keamanan untuk mencapai Amazon S3.

  • Saat Anda menggunakan titik akhir gateway, Anda harus menambahkan rute di tabel rute untuk mengakses titik akhir.

kesalahan menarik gambar conf/error menarik konfigurasi gambar

Kesalahan ini menunjukkan batas tarif telah tercapai atau ada kesalahan jaringan:

Untuk mengatasi masalah ini, lihat Bagaimana saya bisa mengatasi kesalahan "CannotPullContainerError" dalam Tugas Jenis ECS EC2 Peluncuran Amazon saya.

Konteks dibatalkan

Kesalahan ini menunjukkan bahwa konteksnya dibatalkan.

Penyebab umum kesalahan ini adalah karena tugas yang VPC Anda gunakan tidak memiliki rute untuk menarik gambar kontainer dari AmazonECR.