A Docker Inc anunciou o lançamento da versão 1.8 do Docker, que vem com algumas ferramentas novas e atualizadas além de novos recursos no motor. O Docker Toolbox fornece um pacote com o objetivo de ser "a maneira mais rápida de ter um ambiente de desenvolvimento Docker funcionando", e substituir o Boot2Docker. A mudança mais significante no motor do Docker é o Docker Content Trust, que fornece assinatura e verificação de imagem.
O Docker Toolbox é oferecido para usuários Windows e Mac e ambos incluem:
- VirtualBox para executar uma VM Linux leve contendo o Docker Engine;
- Docker Machine, uma ferramenta de provisionamento que instala o Docker sobre o VirtualBox (e também pode instalar o Docker em múltiplos clouds);
- O Docker Client para o sistema operacional em uso;
- Kitematic, uma interface gráfica para o Docker;
- A versão Mac também inclui a ferramenta Docker Compose (que vem da aquisição da Orchard Labs) para ajudar com aplicações multi containers.
As instruções de instalação fornecem um guia de migração para usuários que já estão usando o Boot2Docker, ou que já tem o VirtualBox instalado. O uso do Docker em outros ambientes de virtualização Windows e Mac como Hyper-V, Parallels, VMware's Workstation ou Fusion não são cobertos (e o potencial conflito com estes não é mencionado). O Windows 10 ainda não é suportado.
O Docker Content Trust é baseado no projeto Notary, que é uma "implementação baseada" no The Update Framework (TUF), um framework flexível que pode ser utilizado para atualizar sistemas de maneira segura. O TUF fornece uma distribuição de imagens seguras utilizando meios inseguros de transmissão, através do uso de assinaturas. Isso também garante imagens recentes, logo se alguém estiver fazendo o download de uma imagem é garantido que não esteja obtendo uma versão antiga que pode conter vulnerabilidades conhecidas. O sistema faz uso de três tipos de chaves principais: uma raiz de conteúdo de chave de confiança que está destinada a ser mantida offline, uma chave de codificação que é criada por repositório de imagens e chaves timestamp. As chaves offline e de codificação são automaticamente geradas na primeira vez que uma imagem é enviada com o Content Trust habilitado (que é atualmente controlado através de uma variável de ambiente). O sistema ainda não está totalmente integrado com o Docker Hub, portanto os builds automatizados não podem ser assinados. As imagens de bibliotecas no Docker Hub (por exemplo o Ubuntu) agora são assinadas, e também é possível que usuários possam gerar imagens assinadas para colocar no Docker Hub. David Lawrence do Docker forneceu uma demonstração do Content Trust durante uma apresentação online.
A atualização do Docker Engine mudou suporte dos plugins de volumes de "experimental" para "estável", o que significa que o armazenamento pode ser integrado com outros fornecedores de ecossistemas, tais como Blockbridge, Ceph, ClusterHQ, EMC e Portworx. Também houve adições para drivers de logging, com Graylog Extended Log Format (GELF) e Fluentd se juntando ao syslogd (que é suportando desde a versão 1.6). Devido a um problema com o envio de imagens o Docker 1.8.1 já foi lançado em substituição ao Docker 1.8.0.
Como o binário do Docker funciona tanto com um cliente como servidor, alguns esforços têm sido feitos para separar as duas funcionalidades e melhorar a documentação. Mais notavelmente a opção de linha comando "-d" foi preterido em favor do "daemon" com o último tendo sua própria ajuda. Agora também é possível usar 'docker cp' para copiar arquivos do host para um container (em adição ao anteriormente suportado copy do container para o host).
Para usuários Linux Debian e Ubuntu existem novos repositórios apt e para RHEL, CentOS e Fedora repositórios yum. Em ambos casos agora é o 'docker-engine' que será instalado ao invés do 'lxc-docker', o que foi considerado confuso desde que o Docker descartou o LXC como driver de execução padrão 16 meses atrás. Mudar para os novos repositórios entretanto requer algum cuidado, como customizações realizadas nos arquivos de configuração do Docker que podem ser perdidas, e o comando 'docker' pode não estar presente quando for necessário listar os containers em execução.
As ferramentas de orquestração do Docker também foram atualizadas, com o Compose indo para a versão 1.4 e Machine e Swarm ambos indo para a 0.4. Há uma série de melhorias funcionais além das necessárias para fazer o Toolbox funcionar, algumas das quais vão apelar para aqueles que executam o Docker em escala com gerenciadores como Mesos. A versão 2.1 do Docker Registry foi liberada fornecendo uma operação mais rápida e algumas novas funcionalidades.
Os temas globais para esta versão parecem ser a segurança e facilidades de uso. O primeiro é provavelmente destinado a usuários de grandes empresas, enquanto o último visa colocar o Docker nas mãos de mais desenvolvedores. O Docker está abrindo caminho para ser utilizado no Windows Server 2016, que já está em technical preview, assim o Docker Inc não tem dúvidas em voltar suas atenções para a base de usuários Windows agora.