Bu, kapsayıcı görüntülerini indirirken sınırlamaları ele alan bir dizi makalenin ikinci makalesidir.
В
İndirme sıklığı limitleri daha önce duyurulmuştu.
Ücretsiz plan, anonim kullanıcılar: 100 saatte 6 indirme
Ücretsiz plan, yetkili kullanıcılar: 200 saatte 6 indirme
Profesyonel plan: sınırsız
Ekip planı: sınırsız
Docker indirme sıklığı, Docker Hub'a yapılan bildirim isteklerinin sayısı olarak tanımlanır. Görüntü indirme sıklığı limitleri, görüntü sahibi hesabının türüne değil, görüntüyü isteyen hesabın türüne bağlıdır. Anonim (yetkisiz) kullanıcılar için indirme sıklığı ip adresine bağlıdır.
NB Daha fazla incelik ve en iyi uygulama örnekleri alacaksınız
Kapsayıcı görüntü katmanlarıyla ilgili olarak müşterilerden ve topluluktan sorular alıyoruz. İndirme sıklığını sınırlarken görüntü katmanlarını dikkate almıyoruz çünkü bildirim indirmelerini sınırlıyoruz ve katman sayısı (blob istekleri) şu anda sınırsız. Bu değişiklik, daha kullanıcı dostu hale getirmek için topluluk geri bildirimlerine dayanmaktadır, böylece kullanıcılar kullandıkları her görünümde katmanları saymak zorunda kalmazlar.
Docker Hub görüntü indirme frekanslarının ayrıntılı analizi
Hız sınırının nedenini ve tam olarak nasıl sınırlandırılacağını belirlemek için Docker Hub'dan görüntülerin indirilmesini analiz etmek için çok zaman harcadık. Gördüklerimiz, neredeyse tüm kullanıcıların tipik iş akışları için öngörülebilir bir oranda görüntüleri indirdiğini doğruladı. Ancak, az sayıda anonim kullanıcının gözle görülür bir etkisi vardır, örneğin, tüm indirmelerin yaklaşık %30'u anonim kullanıcıların yalnızca %1'inden gelir.
Yeni limitler bu analize dayanmaktadır, dolayısıyla kullanıcılarımızın çoğu etkilenmeyecektir. Bu sınırlar, geliştiricilerin - Docker öğrenme, kod geliştirme, görüntü oluşturma vb. - normal kullanımını yansıtacak şekilde yapılmıştır.
Geliştiricilerin indirme sıklığı sınırlarını daha iyi anlamalarına yardımcı olma
Artık etkiyi ve ayrıca sınırların nerede olması gerektiğini anladığımıza göre, bu kısıtlamaların işleyişi için teknik koşulları belirlememiz gerekiyordu. Docker kayıt defterinden görüntülerin indirilmesini kısıtlamak oldukça zordur. Kayıt defteri açıklamasında indirmeler için bir API bulamazsınız - sadece mevcut değildir.Aslında, bir görüntünün indirilmesi, API'deki bildirim isteklerinin ve blobların bir birleşimidir ve duruma bağlı olarak farklı şekilde yürütülürler. istemci ve istenen görüntü.
Örneğin, zaten bir görüntünüz varsa, Docker Engine bir manifesto için istekte bulunacak, kabul edilen manifest'e göre gerekli tüm katmanlara zaten sahip olduğunu anlayacak ve ardından duracaktır. Öte yandan, birden çok mimariyi destekleyen bir görüntü indiriyorsanız, bildirim isteği, desteklenen her mimari için görüntü bildirimlerinin bir listesini döndürür. Docker Engine daha sonra üzerinde çalıştığı belirli mimari için başka bir bildirim isteği yayınlayacak ve karşılığında görüntüdeki tüm katmanların bir listesini alacaktır. Daha sonra her eksik katmanı (blob) sorgulayacaktır.
NB Bu konu daha geniş bir şekilde ele alınmıştır.
Bir görüntüyü indirmenin aslında bir veya iki açık istek olduğu ve ayrıca sıfırdan sonsuza - katman istekleri (blob) olduğu ortaya çıktı. Tarihsel olarak Docker, indirme sıklığını katman katman izlemiştir, çünkü bu en çok bant genişliği kullanımıyla ilgilidir. Ancak yine de, daha zor olan topluluğu dinledik, çünkü istenen sayıda katmanı takip etmeniz gerekiyor, bu da Dockerfile ile çalışmaya ilişkin en iyi uygulamaların göz ardı edilmesine yol açacak ve ayrıca sadece isteyen kullanıcılar için daha sezgisel. Ayrıntıları fazla anlamadan kayıt defteriyle çalışın.
Bu nedenle, bildirim isteklerini temel alan isteklerin sayısını sınırlıyoruz. Bu, kullanıcıların anlaması kolay olan görüntülerin indirilmesiyle doğrudan ilgilidir. Gerçekten küçük bir nüans var - zaten var olan bir görüntüyü indirmeye çalışırsanız, katmanları indirmeseniz bile istek yine de dikkate alınacaktır. Her durumda, indirme sıklığını sınırlama yönteminin hem adil hem de kullanıcı dostu olacağını umuyoruz.
Geri bildiriminizi dört gözle bekliyoruz
Kısıtlamaların her kullanıcı türü için uygun olduğundan emin olmak için yaygın kullanım durumlarına göre kısıtlamaları izleyeceğiz ve uygun ayarlamaları yapacağız ve özellikle geliştiricilerin işlerini yapmalarını asla engellememeye çalışacağız.
Bu değişiklikler ışığında CI ve savaş sistemlerinde ince ayarlar yapılmasıyla ilgili başka bir makale için önümüzdeki haftalarda bizi izlemeye devam edin.
Son olarak, açık kaynak topluluğuna verdiğimiz desteğin bir parçası olarak, 1 Kasım'a kadar açık kaynak için yeni fiyatlandırma planları sunacağız. Başvuru için lütfen formu doldurunuz
Hizmet şartlarındaki son değişiklikler hakkında daha fazla bilgi için lütfen şu adresi ziyaret edin:
İmaj indirme sıklık limitlerini yükseltmesi gerekenler için Docker, bir özellik olarak sınırsız imaj indirme imkanı sunar.
Kaynak: habr.com