Como escala o negocio de Docker para servir a millóns de desenvolvedores, parte 2: datos de saída

Como escala o negocio de Docker para servir a millóns de desenvolvedores, parte 2: datos de saída

Este é o segundo artigo dunha serie de artigos que tratarán as limitacións á hora de descargar imaxes de contedores.

В a primeira parte fixemos unha ollada máis atenta ás imaxes almacenadas en Docker Hub, o maior rexistro de imaxes de contedores. Escribimos isto para que entendas mellor como afectarán as nosas Condicións de servizo actualizadas aos equipos de desenvolvemento que utilicen Docker Hub para xestionar imaxes de contedores e canalizacións de CICD.

Os límites de frecuencia de descarga foron anunciados previamente no noso Condicións de servicio. Analizamos os límites de frecuencia que entrarán en vigor o 1 de novembro de 2020:

Plan gratuíto, usuarios anónimos: 100 descargas en 6 horas
Plan gratuíto, usuarios autorizados: 200 descargas en 6 horas
Plan profesional: ilimitado
Plan de equipo: ilimitado

A frecuencia de descarga de Docker defínese como o número de solicitudes de manifesto a Docker Hub. Os límites de frecuencia de descarga de imaxes dependen do tipo de conta que solicita a imaxe, non do tipo de conta do propietario da imaxe. Para usuarios anónimos (non autorizados), a frecuencia de descarga está ligada ao enderezo IP.

NB Recibirás máis sutilezas e casos de mellores prácticas no curso Docker de practicantes. Ademais, podes pasar por el cando che convén, tanto no tempo como no estado de ánimo.

Estamos recibindo preguntas dos clientes e da comunidade sobre as capas de imaxes de contedores. Non consideramos as capas de imaxe ao limitar a frecuencia de descarga, porque limitamos as descargas de manifestos e o número de capas (solicitudes de blob) é actualmente ilimitado. Este cambio baséase nos comentarios da comunidade para facelo máis fácil de usar para que os usuarios non teñan que contar capas en cada aspecto que usan.

Análise detallada das frecuencias de descarga de imaxes de Docker Hub

Pasamos moito tempo analizando a descarga de imaxes de Docker Hub para determinar o motivo do límite de velocidade, así como exactamente como limitalo. O que vimos confirmou que practicamente todos os usuarios están descargando imaxes a un ritmo previsible para os fluxos de traballo típicos. Non obstante, hai unha influencia notable dun pequeno número de usuarios anónimos, por exemplo, preto do 30% de todas as descargas proceden só do 1% dos usuarios anónimos.

Como escala o negocio de Docker para servir a millóns de desenvolvedores, parte 2: datos de saída

Os novos límites baséanse nesta análise, polo que a maioría dos nosos usuarios non se verán afectados. Estes límites fanse para reflectir o uso normal dos desenvolvedores: aprendendo Docker, desenvolvendo código, creando imaxes, etc.

Axudar aos desenvolvedores a comprender mellor os límites de frecuencia de descarga

Agora que entendiamos o impacto, e tamén onde deberían estar os límites, había que determinar as condicións técnicas para o funcionamento destas restricións. Restringir a descarga de imaxes do rexistro de Docker é bastante difícil. Non atoparás unha API para descargas na descrición do rexistro; simplemente non existe. De feito, a descarga dunha imaxe é unha combinación de solicitudes de manifesto e blobs na API, e execútanse de forma diferente, dependendo do estado de o cliente e a imaxe solicitada.

Por exemplo, se xa tes unha imaxe, Docker Engine emitirá unha solicitude de manifesto, entenderá que xa ten todas as capas necesarias en función do manifesto aceptado e, a continuación, parará. Por outra banda, se está a descargar unha imaxe que admite varias arquitecturas, unha solicitude de manifesto devolverá unha lista de manifestos de imaxe para cada arquitectura admitida. A continuación, o Docker Engine emitirá outra solicitude de manifesto para a arquitectura particular na que se está a executar, a cambio obterá unha lista de todas as capas da imaxe. A continuación, consultará cada capa (blob) que falte.

NB Este tema está tratado máis amplamente en Curso de Docker, na que analizaremos todas as súas ferramentas: dende as abstraccións básicas ata os parámetros de rede, os matices de traballar con diversos sistemas operativos e linguaxes de programación. Coñecerás a tecnoloxía e entenderás onde e como usar mellor Docker.

Resulta que a descarga dunha imaxe é en realidade unha ou dúas solicitudes de manifesto, así como de cero a infinito: solicitudes de capas (blob). Históricamente, Docker seguiu a frecuencia de descarga capa por capa, xa que esta está máis relacionada co uso do ancho de banda. Pero, con todo, escoitamos á comunidade, o que é máis difícil, porque cómpre facer un seguimento do número de capas solicitado, o que levará a ignorar as mellores prácticas en relación ao traballo co Dockerfile, e tamén máis intuitivo para os usuarios que queiran só traballar co rexistro sen entender moito os detalles.

Polo tanto, limitamos o número de solicitudes en función de solicitudes de manifesto. Isto está directamente relacionado coa descarga de imaxes, que é fácil de entender para os usuarios. Realmente hai un pequeno matiz: se tentas descargar unha imaxe que xa existe, a solicitude aínda se terá en conta, aínda que non descargues as capas. En calquera caso, esperamos que este método de limitación da frecuencia de descargas sexa xusto e amigable.

Agardando os teus comentarios

Supervisaremos as restricións e faremos os axustes adecuados en función dos casos de uso comúns para asegurarnos de que as restricións sexan axeitadas para cada tipo de usuario e, en particular, tentaremos que nunca os desenvolvedores fagan o seu traballo.

Permanece atento nas próximas semanas para obter outro artigo sobre o axuste do CI e os sistemas de combate á luz destes cambios.

Finalmente, como parte do noso apoio á comunidade de código aberto, proporcionaremos novos plans de prezos para o código aberto ata o 1 de novembro. Para solicitar, enche o formulario aquí.

Para obter máis información sobre os últimos cambios nas condicións do servizo, visite FAQ.

Para aqueles que necesitan aumentar os seus límites de frecuencia de descarga de imaxes, Docker ofrece descargas de imaxes ilimitadas como función. Plans Pro ou Team. Coma sempre, aceptamos comentarios e preguntas. aquí.

Fonte: www.habr.com

Engadir un comentario