Como Rodar o Docker para Windows usando o Bash

Joao Gilberto
Jul 25, 2017 · 3 min read

O Docker pode ser instalado no Windows, mas toda a integração por scripts é feita através do Powershell. Não é muito prático, pois a grande maioria dos tutoriais e scripts encontrada na internet é baseada em Shell Script. Com o Windows Creator Update a Microsoft disponibiliza na Windows Store a instalação do Ubuntu possibilitando a convivência do Linux em uma máquina Windows. Porém o Docker não pode ser executado como serviço nesta instalação.

Neste artigo vou mostrar como instalarmos o Docker para Windows e possibilitar a sua integração através do Ubuntu Bash disponível no Windows.

Como Instalar?

Vamos seguir o procedimento normal e instalar o Docker for Windows:

Após a instalação, efetue o logout e entre novamente. Isso é necessário para que o Windows atualize os prompts de segurança e configure o seu usuário para rodar o Docker.

O próximo passo é configurar o Docker. Pressione o botão direto sobre o ícone do Docker na Taskbar e selecione “Settings”

Em “General” marque a opção “Expose Daemon on tcp://localhost:2375 without TLS”.

Também devemos permitir que o Docker acesse os seus Drives. Vá em “Shared Drives” e em seguida marque qual drive irá compartilhar.

Pronto. Já temos o Docker rodando e configurado no Windows. Agora vamos instalar o Subsistema Linux. Abra a Windows Store e procure por Ubuntu e instale:

Ao término da instalação reinicie o sistema.

Uma vez instalado o Ubuntu, podemos começar a trabalhar direto com linha de comando.

Instalar o Docker

Rode o seguinte comando:

wget -qO- https://get.docker.com/ | sh

Ao final da instalação você verá um erro informando que o Docker não pode ser iniciado. Isso é esperado. Nós iremos acessar o Docker do Windows pelo bash através da API do Docker Host que configuramos anteriormente. O comando passa a ser então:

docker -H tcp://0.0.0.0:2375 images

Ele já é capaz de conectar com a instância do Docker para Windows. Para deixarmos essa configuração padrão basta definirmos a variável de ambiente DOCKER_HOST toda vez que abrirmos o bash:

echo "export DOCKER_HOST='tcp://0.0.0.0:2375'" >> ~/.bashrc
source ~/.bashrc

Pronto! Agora basta rodarmos:

docker images

e voilá! Tudo está funcionando normalmente.

DISCLAIMER: É importante observar que esse procedimento foi feito apenas para ambiente de desenvolvimento. Não tente rodar Docker dessa forma em ambiente de produção. Prefira rodar em Linux nativo.

ByJG

Blog ByJG

Joao Gilberto

Written by

Engenheiro e arquiteto de Software desde 1987 mexendo com computadores :)

ByJG

ByJG

Blog ByJG

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade