A Origem da Ideia: 1956 e o Contêiner de Navio

Em abril de 1956, um navio saiu de Newark para Houston, levando 58 caixas de metal, todas do mesmo tamanho. Até então, carregar um navio era um processo demorado, envolvendo a encher o porão de sacos, barris e caixotes, um por um. Com a caixa padronizada, o guindaste não precisava saber o que tinha dentro: ele só pegava a caixa. O custo de carregar despencou, e o comércio mundial mudou por causa de uma caixa.

O Docker é uma ideia de 1956: a história do contêiner, do navio ao Kubernetes

O Problema dos Sacos e Barris no Software

Quase sessenta anos depois, o software enfrentava o mesmo problema dos sacos e barris. Cada aplicação dependia de uma versão específica de biblioteca, configuração e sistema operacional, e a frase mais ouvida em qualquer equipe era 'mas na minha máquina funciona'.

As Peças para Resolvê-lo

O que faltava era a caixa padronizada: um jeito simples de empacotar a aplicação com tudo o que ela precisava e rodar igual em qualquer lugar. Isso veio em março de 2013, numa palestra relâmpago de cinco minutos na PyCon. Uma pequena empresa de hospedagem, a dotCloud, mostrou a ferramenta interna que usava para rodar as aplicações dos clientes. Chamava-se Docker. Cinco minutos bastaram: o projeto foi aberto, a empresa mudou de nome para Docker e o resto é história.

O que é Docker?

Docker é uma ferramenta que permite criar e gerenciar contêineres de aplicativos. A receita (o Dockerfile) é uma especificação de como criar uma imagem de contêiner, e a caixa (a imagem) é a aplicação já empacotada, sempre igual. A imagem Docker é uma representação do ambiente de execução de uma aplicação, com todas as dependências e configurações necessárias.

Kubernetes e a Open Container Initiative

Depois vieram o Kubernetes (2014), para mover milhares dessas caixas como um porto faz com os navios, e a Open Container Initiative (2015), que padronizou o formato da caixa para que ela não dependesse de uma empresa só. Como o contêiner de navio, que só mudou o mundo quando todos os portos aceitaram o mesmo tamanho.

Conclusão

Docker, inspirado na caixa padronizada de 1956, revolucionou a forma de hospedar e gerir aplicativos. Com o Docker, as aplicações podem ser empacotadas e rodadas em qualquer lugar, sem preocupações com dependências e configurações específicas. O Docker e suas tecnologias relacionadas, como o Kubernetes, têm trans

Fiz um vídeo de 4 minutos contando essa história, com as imagens de arquivo dos portos de 1956 e um Docker de verdade rodando no terminal:

[Link do Vídeo]

Vocês conhecem outra tecnologia que nasceu de uma ideia de fora da computação?

Comentários