Mengotomatiskan pembersihan gambar dengan menggunakan kebijakan siklus hidup di Amazon ECR - Amazon ECR

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

Mengotomatiskan pembersihan gambar dengan menggunakan kebijakan siklus hidup di Amazon ECR

Kebijakan siklus hidup Amazon ECR memberikan kontrol lebih atas manajemen siklus hidup citra dalam repositori pribadi. Kebijakan siklus hidup berisi satu atau beberapa aturan, dan setiap aturan menentukan tindakan untuk Amazon ECR. Berdasarkan kriteria kedaluwarsa dalam kebijakan siklus hidup, gambar dapat diarsipkan atau kedaluwarsa berdasarkan kriteria yang ditentukan dalam kebijakan siklus hidup dalam waktu 24 jam. Saat Amazon ECR melakukan tindakan berdasarkan kebijakan siklus hidup, tindakan ini diambil sebagai peristiwa di. AWS CloudTrail Untuk informasi selengkapnya, lihat Mencatat tindakan Amazon ECR dengan AWS CloudTrail.

Cara kerja kebijakan siklus hidup

Kebijakan siklus hidup terdiri dari satu atau lebih aturan yang menentukan citra mana dalam repositori yang akan kedaluwarsa. Saat mempertimbangkan penggunaan kebijakan siklus hidup, penting untuk menggunakan pratinjau kebijakan siklus hidup untuk mengonfirmasi citra mana yang kebijakan siklus hidupnya kedaluwarsa sebelum menerapkannya ke repositori. Setelah kebijakan siklus hidup diterapkan ke repositori, Anda akan mengharapkan bahwa gambar menjadi kedaluwarsa dalam waktu 24 jam setelah memenuhi kriteria kedaluwarsa. Saat Amazon ECR melakukan tindakan berdasarkan kebijakan siklus hidup, tindakan ini akan diambil sebagai peristiwa di. AWS CloudTrail Untuk informasi selengkapnya, lihat Mencatat tindakan Amazon ECR dengan AWS CloudTrail.

Diagram berikut menunjukkan alur kerja kebijakan siklus hidup.

Diagram yang menunjukkan proses untuk mengevaluasi dan menerapkan kebijakan siklus hidup.
  1. Buat satu atau lebih aturan pengujian.

  2. Simpan aturan pengujian dan jalankan pratinjau.

  3. Evaluator kebijakan siklus hidup membaca semua aturan dan menandai citra yang terpengaruh oleh setiap aturan.

  4. Evaluator kebijakan siklus hidup kemudian menerapkan aturan, berdasarkan prioritas aturan, dan menampilkan gambar mana dalam repositori yang ditetapkan untuk kedaluwarsa atau diarsipkan. Nomor prioritas aturan yang lebih rendah berarti prioritas yang lebih tinggi. Misalnya, aturan dengan prioritas 1 lebih diutamakan daripada aturan dengan prioritas 2.

  5. Tinjau hasil tes, memastikan bahwa gambar yang ditandai kedaluwarsa atau diarsipkan adalah apa yang Anda inginkan.

  6. Terapkan aturan pengujian sebagai kebijakan siklus hidup untuk repositori.

  7. Setelah kebijakan siklus hidup dibuat, Anda akan mengharapkan bahwa gambar kedaluwarsa atau diarsipkan dalam waktu 24 jam setelah memenuhi kriteria kedaluwarsa.

Aturan evaluasi kebijakan siklus hidup

Evaluator kebijakan siklus hidup bertanggung jawab menguraikan JSON plaintext dari kebijakan siklus hidup, mengevaluasi semua aturan, kemudian menerapkan aturan tersebut berdasarkan prioritas aturan pada citra dalam repositori. Berikut ini penjelasan logika evaluator kebijakan siklus hidup secara lebih rinci. Sebagai contoh, lihat Contoh kebijakan siklus hidup di Amazon ECR.

  • Ketika artefak referensi hadir dalam repositori, kebijakan siklus hidup Amazon ECR secara otomatis kedaluwarsa atau mengarsipkan artefak tersebut dalam waktu 24 jam setelah penghapusan atau pengarsipan gambar subjek.

  • Semua aturan dievaluasi pada saat yang sama tanpa memperhatikan prioritas aturan. Setelah dievaluasi, semua aturan kemudian diterapkan berdasarkan prioritas aturan.

  • Gambar kedaluwarsa atau diarsipkan dengan tepat satu atau nol aturan.

  • Gambar yang cocok dengan persyaratan penandaan aturan tidak dapat kedaluwarsa atau diarsipkan oleh aturan dengan prioritas lebih rendah.

  • Aturan tidak pernah dapat menandai gambar yang ditandai dengan aturan prioritas yang lebih tinggi, tetapi masih dapat mengidentifikasi mereka seolah-olah mereka belum kedaluwarsa atau diarsipkan.

  • Himpunan semua aturan yang memilih kelas penyimpanan tertentu harus berisi satu set awalan yang unik.

  • Hanya satu aturan memilih kelas penyimpanan tertentu yang diizinkan untuk memilih gambar yang tidak ditandai.

  • Jika gambar direferensikan oleh daftar manifes, gambar tidak dapat kedaluwarsa atau diarsipkan tanpa daftar manifes dihapus atau diarsipkan terlebih dahulu.

  • Kedaluwarsa selalu dipesan oleh pushed_at_time atau transitioned_at_time dan selalu kedaluwarsa gambar lama sebelum yang lebih baru. Jika gambar diarsipkan dan kemudian dipulihkan pada titik mana pun di masa lalu, gambar last_activated_at digunakan sebagai gantinya. pushed_at_time

  • Aturan kebijakan siklus hidup dapat menentukan salah satu tagPatternList atautagPrefixList, tetapi tidak keduanya. Namun, kebijakan siklus hidup mungkin berisi beberapa aturan di mana aturan yang berbeda menggunakan daftar pola dan awalan. Gambar berhasil dicocokkan jika semua tag dalam tagPrefixList nilai tagPatternList atau dicocokkan dengan salah satu tag gambar.

  • tagPrefixListParameter tagPatternList atau hanya dapat digunakan jika tagStatus adatagged.

  • Saat menggunakantagPatternList, gambar berhasil dicocokkan jika cocok dengan filter wildcard. Misalnya, jika filter diterapkan, itu akan cocok dengan tag gambar yang namanya dimulai dengan prod sepertiprod,prod1, atau. prod* production-team1 Demikian pula, jika filter *prod* diterapkan, itu akan cocok dengan tag gambar yang namanya berisi prod seperti repo-production atau. prod-team

    penting

    Ada batas maksimum empat wildcard (*) per string. Misalnya, ["*test*1*2*3", "test*1*2*3*"] valid tetapi ["test*1*2*3*4*5*6"] tidak valid.

  • Saat menggunakantagPrefixList, gambar berhasil dicocokkan jika semua filter wildcard dalam tagPrefixList nilai dicocokkan dengan tag gambar mana pun.

  • countUnitParameter hanya digunakan jika countType adalahsinceImagePushed,sinceImagePulled, atausinceImageTransitioned.

  • DengancountType = imageCountMoreThan, gambar diurutkan dari yang termuda ke terlama berdasarkan pushed_at_time dan kemudian semua gambar yang lebih besar dari jumlah yang ditentukan kedaluwarsa atau diarsipkan.

  • DengancountType = sinceImagePushed, semua gambar yang pushed_at_time lebih tua dari jumlah hari yang ditentukan berdasarkan countNumber kedaluwarsa atau diarsipkan.

  • DengancountType = sinceImagePulled, semua gambar yang last_recorded_pulltime lebih tua dari jumlah hari yang ditentukan berdasarkan countNumber diarsipkan. Jika gambar tidak pernah ditarik, gambar pushed_at_time digunakan sebagai pengganti gambarlast_recorded_pulltime. Jika gambar diarsipkan dan kemudian dipulihkan pada titik mana pun di masa lalu, tetapi tidak pernah ditarik sejak gambar dipulihkan, gambar last_activated_at digunakan sebagai pengganti gambar. last_recorded_pulltime

  • DengancountType = sinceImageTransitioned, semua gambar yang diarsipkan yang last_archived_at lebih tua dari jumlah hari yang ditentukan berdasarkan countNumber kedaluwarsa.

  • Kedaluwarsa selalu dipesan oleh pushed_at_time dan selalu kedaluwarsa gambar lama sebelum yang lebih baru.