O Docker 1.10 já foi lançado!
Leia sobre todos os Novos recursos no Docker 1.10. Um breve resumo:
- Novo formato de arquivo Compose
- Rede muito melhor
- Segurança muito melhor
- Swarm torna-se 1.1, com integração do Mesos
Ler Notas de versão do Docker 1.10. Vamos dar uma olhada em alguns dos principais componentes.
Máquina do Docker 0.6.0
O Docker Machine facilita muito a criação de hosts do Docker em seu computador, em provedores de nuvem e dentro de seu próprio data center. Ele cria servidores, instala o Docker neles e, em seguida, configura o cliente Docker para se comunicar com eles. A versão mais recente pode ser instalada como:
1 2 3 4 5 6 7 8 |
~> enrolar -L https://github.com/docker/machine/releases/download/v0.6.0/docker-machine-`uname -s`-`uname -m` >/usr/local/bin/docker-machine && ~> chmod +x /usr/local/caixa/doca-máquina % Total % Recebido % Xferd Média Velocidade Tempo Tempo Tempo Atual Dload Carregar Total Gastos Esquerda Velocidade 100 601 0 601 0 0 362 0 --:--:-- 0:00:01 --:--:-- 362 100 36.6M 100 36.6M 0 0 2822k 0 0:00:13 0:00:13 --:--:-- 4899k ~ > doca-máquina versão doca-máquina versão 0.6.0, construir e27fb87 |
O docker-machine agora mostra a versão do servidor Docker:
1 2 3 4 |
~ > doca-máquina ls NOME ATIVO CONDUTOR ESTADO URL SWARM DOCKER ERROS couchbase - caixa virtual Em execução tcp://192.168.99.100:2376 v1.9.1 netbeans - caixa virtual Salvo Desconhecido |
A versão mais recente do servidor é a 1.10. E assim atualização da plataforma
pode ser usado para corrigir isso:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
~ > doca-máquina atualização couchbase Em espera para SSH para ser disponível... Detecção o provisionador... Atualização doca... Parada máquina para fazer o atualização... Atualização máquina "couchbase"... Padrão Boot2Docker ISO é fora-de-data, download o mais recente liberação... Mais recentes liberação para github.com/boot2docker/boot2docker é v1.10.0 Download /Usuários/arungupta/.doca/máquina/cache/boot2docker.iso de https://github.com/boot2docker/boot2docker/releases/download/v1.10.0/boot2docker.iso... 0%....10%....20%....30%....40%....50%....60%....70%....80%....90%....100% Cópia /Usuários/arungupta/.doca/máquina/cache/boot2docker.iso para /Usuários/arungupta/.doca/máquina/máquinas/couchbase/boot2docker.iso... Início máquina voltar para cima... (couchbase) Verificar rede para re-criar se necessário... (couchbase) Em espera para e IP... Reiniciando doca... |
A lista atualizada de máquinas agora é mostrada como:
1 2 3 4 |
~ > doca-máquina ls NOME ATIVO CONDUTOR ESTADO URL SWARM DOCKER ERROS couchbase - caixa virtual Em execução tcp://192.168.99.100:2376 v1.10.0 netbeans - caixa virtual Salvo Desconhecido |
Observe que a versão do Docker agora é 1.10
. Configure as variáveis de ambiente de modo que o cliente Docker possa se comunicar com ele:
1 |
avaliação $(doca-máquina env couchbase) |
Cliente Docker 1.10
Vamos baixar o cliente mais recente para nos conectarmos a esse mecanismo do Docker.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
> enrolar https://get.docker.com/builds/Darwin/x86_64/docker-latest > /usr/local/bin/docker % Total % Recebido % Xferd Média Velocidade Tempo Tempo Tempo Atual Dload Carregar Total Gastos Esquerda Velocidade 100 10.0M 100 10.0M 0 0 3836k 0 0:00:02 0:00:02 --:--:-- 3836k > doca versão Cliente: Versão: 1.10.0 API versão: 1.22 Ir versão: go1.5.3 Git comprometer: 590d5108 Construído: Assim fevereiro 4 19:55:25 2016 SO/Arco: Darwin/amd64 Servidor: Versão: 1.10.0 API versão: 1.22 Ir versão: go1.5.3 Git comprometer: 590d5108 Construído: Assim fevereiro 4 19:55:25 2016 SO/Arco: linux/amd64 |
As versões do cliente e do servidor são mostradas separadamente. Execute o contêiner do Couchbase como:
1 2 |
~ > doca executar -d -p 8091-8093:8091-8093 -p 11210:11210 arungupta/couchbase-nó 4783d72298d1f27255f12cf765ed1121c7656d09a866bc350354e38787627a79 |
Isso inicia um servidor Couchbase totalmente configurado. Ele pode ser acessado em 192.168.99.100:8091 e tem a aparência mostrada:
Observe que 192.168.99.100 é obtido usando máquina doca ip
. Portal do desenvolvedor do Couchbase fornecem mais detalhes sobre o Couchbase Server.
Docker Compose 1.6.0
Docker Compose é uma ferramenta para definir e executar aplicativos complexos com o Docker. Com o Compose, você define um aplicativo de vários contêineres em um único arquivo e, em seguida, executa seu aplicativo com um único comando que faz tudo o que precisa ser feito para colocá-lo em execução. Saiba mais sobre o Compose Docker Compose 1.6.0. Instale a versão mais recente:
1 2 3 4 5 6 7 |
enrolar -L https://github.com/docker/compose/releases/download/1.6.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose % Total % Recebido % Xferd Média Velocidade Tempo Tempo Tempo Atual Dload Carregar Total Gastos Esquerda Velocidade 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 601 0 601 0 0 1067 0 --:--:-- --:--:-- --:--:-- 1065 100 4837k 100 4837k 0 0 945k 0 0:00:05 0:00:05 --:--:-- 1426k chmod +x /usr/local/caixa/doca-compor |
Os sinalizadores experimentais --x-networking
e --x-network-driver
introduzido no Compose 1.5, foi removido. Não é mais experimental e é a maneira recomendada de permitir a comunicação entre contêineres. O Compose 1.6.0 requer o Docker Engine 1.9.1 ou posterior, ou 1.10.0 se você estiver usando a versão 2 do formato Compose File.
Atualização do arquivo Compose
O Compose 1.6 apresenta uma nova versão do arquivo Compose. Leia mais detalhes sobre Atualização do arquivo Compose. O Compose 1.6 continuará a executar arquivos da versão anterior do Compose. Mas agora a rede e os volumes são cidadãos de primeira classe. Aqui está um exemplo da versão 1 do arquivo Compose:
1 2 3 4 5 6 7 |
mycouchbase: imagem: arungupta/couchbase-nó portos: - 8091:8091 - 8092:8092 - 8093:8093 - 11210:11210 |
Aqui está a versão 2 do arquivo Compose:
1 2 3 4 5 6 7 8 9 |
versão: "2" serviços: mycouchbase: imagem: arungupta/couchbase portos: - 8091:8091 - 8092:8092 - 8093:8093 - 11210:11210 |
Para casos de uso simples, as duas principais alterações são:
- Adicionar um
versão: '2'
na parte superior do arquivo. - Indentifique o arquivo inteiro em um nível e coloque um
serviços:
na parte superior.
Os serviços em execução nesse arquivo Compose são:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
~ > doca-compor para cima -d Criação de rede "couchbase_default" com o padrão motorista Puxar mycouchbase (arungupta/couchbase:mais recente)... mais recente: Puxar de arungupta/couchbase a50d2b3f7efa: Já existe 27e1b0c788a2: Já existe 622b8fa00f81: Já existe a3ed95caeb02: Puxar completo 0bc56fd185bd: Já existe 10f0979b6cbd: Já existe 9be3d8460ed2: Já existe 59e718ec07e9: Já existe a0b9aa29408d: Já existe e2717fa0b388: Puxar completo Digerir: sha256:9131c5a283d79e11b6556c94b0b0f8ceba7daf5ba5982bac850100099019959f Status: Baixado mais recente imagem para arungupta/couchbase:mais recente Criação de base de sofá_mycouchbase_1 |
Isso inicia um servidor Couchbase totalmente configurado com base na imagem, conforme explicado em github.com/arun-gupta/docker-images/tree/master/couchbase-node.
Docker Swarm 1.1
Docker Swarm é o clustering nativo para o Docker. Ele permite que você crie e acesse um pool de hosts do Docker usando o conjunto completo de ferramentas do Docker. Como o Docker Swarm atende à API padrão do Docker, qualquer ferramenta que já se comunique com um daemon do Docker pode usar o Swarm para escalar de forma transparente para vários hosts. Um novo suporte experimental para reprogramação de contêineres em caso de falha de nó foi adicionado. Leia mais detalhes sobre a configuração do Cluster do Docker Swarm. Por fim, aqui estão alguns links úteis:
- Caixa de ferramentas do Docker 1.10
- Notas de versão do Docker 1.10
- Melhorias na segurança do Docker 1.10
- Docker para desenvolvedores Java
Aproveite!