Docker (software)

Origem: Wikipédia, a enciclopédia livre.
(Redirecionado de Docker (programa))
Saltar para a navegação Saltar para a pesquisa
Docker
Docker (container engine) logo.svg
Autor Solomon Hykes
Desenvolvedor Docker, Inc.
Lançamento 13 de março de 2013 (6 anos)
Linguagem Go
Sistema operacional Linux, Windows e Mac
Gênero(s) virtualização tipo contêiner
Licença Licença Apache 2.0 ou Proprietária (no caso do "Docker Enterprise")
Página oficial www.docker.com

Docker é uma tecnologia de software que fornece contêineres, promovido pela empresa Docker, Inc. O Docker fornece uma camada adicional de abstração e automação de virtualização de nível de sistema operacional no Windows e no Linux.[1][2] O Docker usa as características de isolamento de recurso do núcleo do Linux como cgroups e espaços de nomes do núcleo, e um sistema de arquivos com recursos de união, como OverlayFS e outros[3] para permitir "contêineres" independentes para executar dentro de uma única instância Linux, evitando a sobrecarga de iniciar e manter máquinas virtuais (VMs).[4]

O suporte para espaços de nomes do núcleo do Linux na maioria das vezes[5] isola uma visão da aplicação do ambiente operacional, incluindo árvores de processo, rede, IDs de usuário e sistemas de arquivos montados, uma vez que os cgroups do núcleo fornecem limitação de recursos, incluindo a UCP, memória, bloco de E/S e rede. Desde a versão 0.9, o Docker inclui a biblioteca libcontainer como seu próprio mecanismo de usar diretamente os recursos de virtualização fornecidos pelo núcleo do Linux, além de usar interfaces de virtualização abstrata via libvirt, LXC (Linux Containers) e systemd-nspawn.[6][7][8]

Visão geral[editar | editar código-fonte]

O docker é uma alternativa de virtualização em que o kernel da máquina hospedeira é compartilhado com a máquina virtualizada ou o software em operação, portanto um desenvolvedor pode agregar a seu software a possibilidade de levar as bibliotecas e outras dependências do seu programa junto ao software com menos perda de desempenho do que a virtualização do hardware de um servidor completo. Assim, o docker torna operações em uma infraestrutura como serviços web mais intercambiável, eficientes e flexíveis.

Segundo uma análise da 451 Research, o "docker é uma ferramenta que pode empacotar um aplicativo e suas dependências em um recipiente virtual que pode ser executado em qualquer servidor Linux. Isso ajuda a permitir flexibilidade e portabilidade de onde o aplicativo pode ser executado, quer nas instalações, nuvem pública, nuvem privada, entre outros."[9]

Notas e referências

  1. «Ben Golub, Who Sold Gluster to Red Hat, Now Running dotCloud». maureenogara.sys-con.com (em inglês). Consultado em 8 de outubro de 2015 
  2. O'Gara, Maureen (26 de julho de 2013). «Ben Golub, Who Sold Gluster to Red Hat, Now Running dotCloud». SYS-CON Media. Consultado em 9 de agosto de 2013 
  3. «Select a storage driver documentation». Docker documentation. Consultado em 7 de dezembro de 2016. Cópia arquivada em 6 de dezembro de 2016 
  4. «Docker Documentation: Kernel Requirements». docker.readthedocs.org. 4 de janeiro de 2014. Consultado em 20 de agosto de 2014. Cópia arquivada em 21 de agosto de 2014 
  5. Dan Walsh. «Yet Another Reason Containers Don't Contain: Kernel Keyrings». projectatomic.io. Consultado em 13 de abril de 2015 
  6. Steven J. Vaughan-Nichols (11 de junho de 2014). «Docker libcontainer unifies Linux container powers». ZDNet. Consultado em 30 de julho de 2014 
  7. «libcontainer - reference implementation for containers». github.com. Consultado em 30 de julho de 2014 
  8. «Docker 0.9: Introducing execution drivers and libcontainer». docker.com. 10 de março de 2014. Consultado em 20 de janeiro de 2015 
  9. «Docker: A 'Shipping Container' for Linux Code». linux.com (em inglês). Consultado em 8 de outubro de 2015 

Ligações externas[editar | editar código-fonte]


Ícone de esboço Este artigo sobre software é um esboço. Você pode ajudar a Wikipédia expandindo-o.