Como foi desenvolvido em cima do LXC, o funcionamento é 'nativo' e acontece muito bem. Para outros sistemas, é necessário instalar o Docker Toolbox, que cria uma VM por baixo dos panos rodando linux e oferecendo o acesso aos contêiners de forma simplificada. Entretanto, a MS lançou recentemente uma ferramenta denominada "Windows Subsystem for Linux", oferecendo suporte nativo para o Docker rodar sem a necessidade de uma VM.
Para instalação no Ubuntu 16.04, certifique-se que não há antigas versões do docker:
sudo apt remove docker docker-engine docker.io
Esse comando não irá remover imagens ou seus containers, apenas habilitar a utilização do novo docker.
Pacotes necessários para o apt conseguir acessar servidores FTP:
sudo apt install apt-transport-https ca-certificates curl software-properties-common
Adicionar chave GPG
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Adicionar o repositório oficial para amd64
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Atualize a lista de repositórios e instale o Docker community edition:
sudo apt update && sudo apt install docker-ce -y
O Docker sempre funciona a partir do usuário root, porém podemos adicionar ele ao grupo do usuário
sudo gpasswd -a $USER docker
Para validar as informações, pode ser utilizado o comando $ newgrp docker porém nem sempre funciona, dependendo do que há no cache de sessão. Se não funcionar, faça um logout e login.
Para testar, execute o contêiner de hello-world, cuja imagem será baixada caso não exista:
docker run hello-world
Uma imagem é o arquivo utilizado para construir um contêiner. A partir dela, é definida como o contêiner se comporta enquanto ativo.