apt-get update Instalacao da imagem do kernel extra e virtual $ sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual Instalacao do pacote Docker $ sudo apt-get install docker-engine Start do servico Docker $ sudo service docker start Comandos Docker Build de uma imagem docker build -t Lembre que as imagens sao compostas de camadas (layers) e que o Docker usa caching para fazer o build somente das camadas que tiveram alguma mudanca. Recentemente, o Docker publicou uma Image Specification, que explica como tudo isso funciona. Para buildar uma imagem sem utilizar caching, adicione a opcao --no-cache ao comando. Executar um container docker run -d -p : --name Iniciar uma sessao bash em um container que esteja rodando docker exec -it bash Pesquisa de imagens docker search nome-imagem Encontrado a imagem, execute o comando pull para o download docker pull nome-imagem Remover um imagem Localize o ID ou nome do repositorio com o comando docker images.Com o id ou o nome do repositorio em maos, utilize o comando rmi para excluir as imagens. docker rmi ID_ou_nome_da_imagem Ver os logs de um container docker logs Ver todas as imagens no host docker images Ver todos os containers docker ps -a Remover um container docker rm -f Remover TODOS os containers docker rm -f $(docker ps -a -q) Remover uma imagem docker rmi -f Remover dangling images docker rmi $(docker images -q -f dangling=true) "Dangling images" sao, basicamente, imagens sem uma tag. Se voce alguma(s) vez(es) rodou um Dockerfile que falhou, provavelmente voce deve ter uma ou mais imagens sem tags. Copiar um arquivo do container para o host docker cp :/caminho/no/container /caminho/no/host Monitoramento de containers Visualizar estatisticas de um container docker stats Visualizar estatisticas de todos os containers executando no host docker stats `docker ps | tail -n+2 | awk '{ print $NF }' Repositorio de imagens prontas do Docker O site https://hub.docker.com/explore/ e onde estao as imagens prontas para usar usando os comandos informados. Construindo sua propria imagem para seu ambiente em uma aplicacao O arquivo de manifesto do Docker e o Dockerfile, nele voce coloca as instrucoes de como voce quer que sua imagem seja construida. Voce pode na construcao da imagem setar outro arquivo com o parametro -f. Abaixo temos um exemplo de Dockerfile, esse e um exemplo de um app em go ja compilado para ubuntu entao eu so preciso copiar o arquivo executavel elasticpush para dentro do docker: FROM debian:jessie RUN mkdir /app ENV ACCESS_TOKEN abc ENV SECRET_TOKEN xyz COPY ./bin/elasticpush /app/elasticpush ENTRYPOINT [/app/elasticpush] Detalhando os comandos utilizados: FROM: Este e o comando mais importante, pois ele especifica a imagem base para a construcao de uma nova. Na maioria das vezes a imagem especificada vai ser uma distribuicao linux, se essa imagem nao for encontrada na maquina local, o docker tentara buscar em algum repository. Caso queira, por exemplo, fazer a build do seu app em GO dentro do container, voce vai precisar de uma imagem que tenha o GO instalado e configurado. Outra forma tambem seria criar diversas instrucoes com o comando RUN para fazer essa instalacao. RUN: Esse comando