Iniciando com Docker

January 2, 2016
docker devops

Após um longo periodo sem atualizações estou de volta para falar sobre algo muito interessante que na verdade ja deveria ter escrito aqui sobre isso a muito tempo. Como este é o primeiro post sobre Docker vou começar com a instalação e uso do Docker no ambiente de desenvolvimento e em posts futuros vamos falar sobre algumas ferramentas e o uso do Docker em ambiente de produção.

Vou demonstrar a instalação do Docker em uma maquina com OsX. A instalação é diferente de uma maquina com Linux mas o a execução e uso é parecido. Eu sempre instalo tudo utilizando o Homebrew então com o Docker não poderia ser diferente.

Vamos precisar instalar o Docker e o Docker Machine para quem utiliza OsX ou Windows o Docker Machine é obrigatório pois precisamos criar uma maquina aonde possamos rodar os comandos Docker. Apesar de não ser obrigatório o uso do Docker Machine no Linux você também pode usar ele. O Docker Machine não só nos permite criar hosts locais para o Docker como também na Amazon na Digital Ocean entre outros.

Instalando o docker e o docker-machine no OsX

brew install docker
brew install docker-machine

Agora criaremos um host utilizando o docker-machine para que possamos executar os comandos docker, criar nossos containers, imagens etc.

docker-machine create -d virtualbox mydockermachine

Este comando adiciona algumas informações ao profile. Estas informações informam ao docker em que host os comandos deverão ser executados

eval "$(docker-machine env dev)"

Abaixo um exemplo do profile da minha maquina.

DOCKER_HOST=tcp://192.168.99.100:2376
DOCKER_MACHINE_NAME=dev
DOCKER_TLS_VERIFY=1
DOCKER_CERT_PATH=/Users/fabianofrizzo/.docker/machine/machines/dev

Se executarmos o comando abaixo teremos a lista de maquinas criadas e também qual esta ativa.

docker-machine ls

Fazendo pull das imagens para criar os containers. Podemos simplesmente fazer o pull da ultima versão(latest) como também podemos informar qual versão gostariamos de fazer pull, para isto bastaria adicionar :{versão} logo após o nome da imagem que esta sendo feito o pull.

docker pull postgres

Criaremos o container docker apartir da imagem que baixamos no passo anterior.

docker run --name postgres -p 5432:5432 -e POSTGRES_PASSWORD={seu password} -d postgres

Um pouco sobre os parametros utilizados

Se tudo occoreu como o esperado quando for executado o comando docker ps deverá aparecer na lista um container com o nome postgres, para visualizar todos os containers mesmo os que não estão sendo executados use o comando docker ps -a. Se vocÊ precisar acessar o bash do seu container é possivel utilizando o comando exec. Com o comando exec é possível executar todos os comandos de um terminal linux você pode rodar ls, rm, etc.

docker exec -it postgres bash

O comando acima nos da acesso ao terminal do container postgres que criamos.

É possível parar e startar novamente o mesmo container com os comandos start e stop

docker stop postgres
docker start postgres

Excluir um container

docker rm postgres

Excluir uma imagem.

docker rmi postgres

Para ver todos os comandos disponíveis no docker execute docker help e para mais detalhes sobre cada comando docker help {comando}

Este é um post básico sobre o uso do docker, em posts futuros irei abortar outros comandos do docker e outras ferramentas como docker compose e o docker swarm, claro que ainda temos várias outras ferramentas de terceiros para utilizar em conjunto com o docker e tornar o uso muito dele mais prático.

Controlando processos com o Supervisor

September 11, 2015
supervisord devops

Rancher OS - Uma distribuição Linux para rodar containers Docker

July 18, 2015
so docker

Wercker - Build e Deploy de maneira facil.

June 10, 2015
deployment golang docker wercker
comments powered by Disqus