Home > Tendências

Cinco motivos pelos quais os desenvolvedores adoram containers

Os desenvolvedores são uma força motriz por trás da adoção da tecnologia de container, em geral e Docker, em particular. Aqui está o porquê

Paul Rubens, CIO/EUA

07/04/2017 às 14h01

containers625CIOb.jpg
Foto:

Os containers Linux existem há quase uma década, mas foi apenas
com o lançamento do Docker, há quatro anos, que um grande número de
desenvolvedores começou a adotar a tecnologia. Agora parece que
os containers estão em toda parte e sua popularidade continua a
aumentar.

Os containers tornaram-se uma parte tão importante do
cenário de TI que gigantes da virtualização de servidores, como VMware e
Microsoft, tiveram que sair de seu caminho para acomodá-los. A VMware agora
oferece uma maneira de implantar, executar e gerenciar containers de
seu sistema de gerenciamento de infraestrutura de virtualização vSphere,
enquanto a Microsoft - que construiu a virtualização de servidores Hyper-V em
seu produto Windows Server - fez parceria com Docker para criar containers do
Windows Server e adicionar suporte ao kernel do Windows 10.

Isso ocorre porque as máquinas virtuais (VMs) costumavam ser a
tecnologia go-to para organizações ágeis. Agora, muitas dessas organizações
estão repensando suas estratégias de virtualização e olhando para contêineres,
além de, ou em vez de, VMs.

Mas quais motivos levaram os containers a ser tão populares
entre os desenvolvedores? 

As razões incluem a facilidade de instalação e uso, capacidade de
automatizar tarefas comuns, a documentação e, talvez, até mesmo o fato do
principal produto ser de código aberto. É quase certo que esses fatores,
combinados, ajudaram a tornar o Docker popular entre os desenvolvedores.

Mas há outras razões. 

1. Tendência para microserviços 
Há uma tendência hoje para arquitetura de microserviços, com aplicativos construídos
a partir de múltiplos componentes autosuficientes. Em muitos casos, estes
componentes são candidatos perfeitos para a contêinerização. "Os
desenvolvedores gostam de containers porque facilitam a passagem para uma
arquitetura de microserviços - reduzem o atrito", diz Dave Bartoletti,
analista da Forrester Research.

De fato, a relação entre containers e a arquitetura de
microserviços é complexa porque os dois são interdependentes, de acordo com Al
Gillen, analista de desenvolvimento de software da empresa de pesquisa IDC.

"Os containers dão a você a capacidade de 'fazer'
microserviços, e microserviços funcionam bem com containers", diz ele.

Dito de outra forma, os desenvolvedores gostam de containers
porque eles são convenientes para a construção de microserviços, e uma razão
para a popularidade da arquitetura microserviços é que os containers  os tornam de fácil implementação.

É tipo a situação do que veio primeiro, se o ovo ou a galinha.

containers

2. Ascensão do DevOps 
Há uma outra razão para que os desenvolvedores gostem da arquitetura de
microserviços, diz Gillen. "Se você construir microserviços, ou um app
compartimentado com pequenas peças lógicas que interagem através de APIs, então
isso é melhor para se mover para DevOps", diz ele.

Você poderia argumentar que a maioria dos desenvolvedores se
preocupa em escrever código e não sobre como seus aplicativos são implantados,
mas a realidade é que o processo DevOps está se tornando mais comum e
o uso de containers certamente facilita a implantação. Isso ocorre porque oscontainers serão executados em qualquer ambiente - de um laptop a um data
center ou na nuvem - e muitas tarefas do DevOps podem ser automatizadas usando
Docker.

"É claro que você  pode fazer DevOps sem container", diz Bartoletti. "Se você quer DevOps, é fácil de
fazer implantar a metodologia em uma infraestrutura de containers".

3. Preguiça do desenvolvedor 
Larry Wall, o irreverente autor da linguagem de programação Perl, diz que a preguiça é uma das "três virtudes dos grandes programadores". As outras duas são impaciência e arrogância.

Preguiça, neste contexto, significa usar ferramentas de economia de
trabalho e automação sempre que possível, e containers tornam este tipo de
preguiça muito fácil.

O uso do Docker também torna mais fácil para os desenvolvedores serem preguiçosos, oferecendo um conjunto útil de ferramentas que automatizam muitas das tarefas mais chatas e mundanas associadas ao processo de criação e desenvolvimento de aplicativos.

docker

4. Atração por ferramentas de código aberto 
O simples fato de que o Docker é de código aberto e tem uma ampla comunidade de
contribuidores, bem como de parceiros, é outra razão para a sua popularidade entre os desenvolvedores.

Ferramentas de desenvolvimento de código aberto tendem a ser
populares entre os desenvolvedores porque eles estão interessados ​​em
ferramentas de desenvolvimento em geral e porque estão qualificados para
escrever e contribuir com o código - ou plugins para o código - para torná-las melhores.

Além disso, muitos desenvolvedores relutam em ficar
"trancados" em plataformas proprietárias, de um determinado fornecedor, e o Docker
faz parte de um ecossistema de código aberto que inclui o sistema de
orquestração Docker, por exemplo, mas também sistemas de orquestração
alternativos, como o Google Kubernetes. E porque é de código aberto, os
desenvolvedores são livres para escrever seu próprio sistema de orquestração,
se assim o desejarem.

Como um sistema de container como o Docker é uma parte fundamental
da infraestrutura de TI de uma organização, o fato de ser de código aberto
também é extremamente útil quando se trata de solução de problemas e
otimização. Como os desenvolvedores não estão trabalhando com uma "caixa
preta", quando ocorrem problemas ou comportamento inesperado, eles podem
examinar o código-fonte do Docker para identificar problemas e entender como
trabalhar em torno deles.

5. Melhores perspectivas de carreira
Uma última razão pela qual os desenvolvedores gostam de usar containers e
Docker é que são novos. "Os desenvolvedores geralmente querem
colocar as mãos nas novas ferramentas, porque isso pode representar um investimento em sua
carreira", diz ele.

"Você não quer que o item principal em seu currículo seja 50 anos de experiência COBOL, mas se você pode dizer que você está alinhado com técnicas de desenvolvimento ágil e familiarizado com
Docker. Isso cai bem. "

Junte-se a nós e receba nossas melhores histórias de tecnologia. Newsletter Newsletter por e-mail