Como o Docker Business se expande para atender a milhões de desenvolvedores, Parte 2: Dados de saída

Como o Docker Business se expande para atender a milhões de desenvolvedores, Parte 2: Dados de saída

Este é o segundo artigo de uma série de artigos que abordarão as limitações ao baixar imagens de contêiner.

В a primeira parte Analisamos mais de perto as imagens armazenadas no Docker Hub, o maior registro de imagens de contêiner. Estamos escrevendo isso para ajudar você a entender melhor como nossos Termos de Serviço atualizados impactarão as equipes de desenvolvimento que usam o Docker Hub para gerenciar imagens de contêiner e pipelines CICD.

As restrições à frequência de download foram anunciadas anteriormente em nosso Termos de serviço. Analisamos mais de perto as restrições de frequência que entrarão em vigor em 1º de novembro de 2020:

Plano gratuito, usuários anônimos: 100 downloads em 6 horas
Plano gratuito, usuários autorizados: 200 downloads em 6 horas
Plano Pro: Ilimitado
Plano tarifário de equipe: ilimitado

A frequência de download do Docker é definida como o número de solicitações de manifesto ao Docker Hub. Os limites de frequência com que as imagens podem ser baixadas baseiam-se no tipo de conta que solicita a imagem, e não no tipo de conta que possui a imagem. Para usuários anônimos (não autorizados), a frequência de download está vinculada ao endereço IP.

NB Você receberá mais sutilezas e casos de melhores práticas no curso Docker de profissionais. Além disso, você pode tomá-lo sempre que for conveniente para você - tanto em termos de tempo quanto de humor.

Recebemos perguntas de clientes e da comunidade sobre camadas de imagens de contêineres. Não contamos camadas de imagem ao limitar a frequência de download porque limitamos os downloads de manifestos e o número de camadas (solicitações de blob) é atualmente ilimitado. Essa mudança é baseada no feedback da comunidade para torná-la mais fácil de usar, para que os usuários não precisem contar as camadas em cada imagem que usam.

Análise detalhada das taxas de download de imagens do Docker Hub

Passamos muito tempo analisando downloads de imagens do Docker Hub para determinar o que estava causando o limite de taxa e como exatamente ele deveria ser limitado. O que vimos confirmou que praticamente todos os usuários baixaram imagens em velocidades previsíveis para fluxos de trabalho típicos. No entanto, existe uma influência notável de um pequeno número de utilizadores anónimos, por exemplo, cerca de 30% de todos os downloads provêm de apenas 1% dos utilizadores anónimos.

Como o Docker Business se expande para atender a milhões de desenvolvedores, Parte 2: Dados de saída

As novas restrições baseiam-se nesta análise, pelo que a maioria dos nossos utilizadores não será afetada. Essas restrições são feitas para refletir o uso comum dos desenvolvedores - aprender Docker, desenvolver código, criar imagens, etc.

Ajude os desenvolvedores a entender melhor a limitação da taxa de download

Agora que entendemos o impacto, bem como onde deveriam estar os limites, precisávamos determinar as condições técnicas para a operação dessas restrições. Limitar downloads de imagens do registro Docker é bastante difícil. Você não encontrará uma API de upload na descrição do registro - ela simplesmente não existe. Na verdade, o download de uma imagem é uma combinação de solicitações de manifesto e blobs na API, e eles são executados de forma diferente, dependendo do estado do cliente e a imagem solicitada.

Por exemplo, se você já possui uma imagem, o Docker Engine emitirá uma solicitação de manifesto, perceberá que já possui todas as camadas necessárias com base no manifesto aceito e então parará. Por outro lado, se você baixar uma imagem que suporta múltiplas arquiteturas, a consulta do manifesto retornará uma lista de manifestos de imagem para cada arquitetura suportada. O Docker Engine emitirá então outra solicitação de manifesto para a arquitetura específica em que está sendo executado e, em troca, receberá uma lista de todas as camadas da imagem. Em seguida, ele consultará cada camada ausente (blob).

NB Este tópico é abordado mais amplamente em Curso Docker, no qual analisaremos todas as suas ferramentas: desde abstrações básicas até parâmetros de rede, nuances de trabalhar com diversos sistemas operacionais e linguagens de programação. Você se familiarizará com a tecnologia e entenderá onde e como usar melhor o Docker.

Acontece que o download de uma imagem é, na verdade, uma ou duas solicitações de manifesto, bem como de zero a solicitações de camada infinita (blob). Historicamente, o Docker rastreou a frequência de download camada por camada, pois está mais associada ao uso da largura de banda. Mas mesmo assim ouvimos a comunidade que isso é mais difícil, pois é necessário rastrear o número de camadas solicitadas, o que levará a ignorar as melhores práticas em relação ao trabalho com Dockerfile, e também é mais intuitivo para usuários que desejam apenas trabalhar com o registro sem muita compreensão dos detalhes.

Portanto, limitamos o número de solicitações com base nas solicitações de manifesto. Isso está diretamente relacionado ao download de imagens, que é de fácil compreensão para os usuários. Há, porém, uma pequena ressalva - se você tentar baixar uma imagem que já existe, a solicitação ainda será levada em consideração, mesmo que você não baixe as camadas. De qualquer forma, esperamos que este método de limitar a frequência de download seja justo e conveniente para os usuários.

Nós estamos esperando pelo seu feedback

Monitoraremos as restrições e faremos os ajustes apropriados com base em casos de uso típicos para garantir que as restrições sejam apropriadas para cada tipo de usuário e, em particular, tentaremos nunca impedir que os desenvolvedores façam seu trabalho.

Fique ligado nas próximas semanas para outro artigo sobre como configurar CI e sistemas de combate à luz dessas mudanças.

Finalmente, como parte do nosso apoio à comunidade de código aberto, lançaremos novos planos de preços de código aberto até 1º de novembro. Para se candidatar, por favor preencha o formulário aqui.

Para obter mais informações sobre as últimas alterações nos termos de serviço, entre em contato Perguntas frequentes.

Para quem precisa aumentar o limite de frequência de download de imagens, o Docker oferece downloads ilimitados de imagens como recurso Planos Pro ou Team. Como sempre, agradecemos comentários e perguntas. aqui.

Fonte: habr.com

Adicionar um comentário