1.2 - Docker parte 1
Lab 1.1 - Objetivos
Buscar informações sobre o ambiente Docker
Obter imagens de registros externos
Manipular imagens do registro local
Executar containers localmente
Tarefas
1.1.1 - Informações do Ambiente local
Para buscarmos informações sobre o ambiente local, usa-se:

1.1.2 - Buscando Imagens dos Registries
Toda instalação do runtime Docker acompanha configuração dos Registries mais comuns. Podemos ver isso por meio do comando docker info
.
Por padrão, o registry docker.io
já vem configurado como podemos ver na imagem acima.
Para buscar novas imagens nos Registries configurados, usa-se:
Nesse caso, ele irá buscar as imagens do centos no Dockerhub (docker.io) que já vem pré-configurado com o Docker.

Você também pode filtrar pelo número de estrelas (stars) que um repo possui.
Para isso basta passar o parametro --filter

No cenário acima, só existirão resultados que tenham mais que 10 estrelas.
1.1.3 - Baixando Imagens dos Registries
Além de nome, imagens possuem tags (sufixo separado por ':') que podem identificar versões ou variações de uma imagem especÃfica. Para baixar uma imagem para o storage local de imagens, usa-se:

O comando acima é equivalente a:
INFO: Quando não especificamos qual registry queremos usar, o docker irá utilizar o que está configurado no arquivo /etc/sysconfig/docker. Quando instalado pela primeira vez, o padrão é o docker.io.
É possÃvel também baixar imagens de outros registries quando especificamos isso na linha de comando:
No exemplo abaixo utilizaremos o registry oficial da Red Hat.
Caso você encontre o erro abaixo:

Ele acontece porque o link simbólico aponta para um arquivo inexistente. Para resolver isso, execute o comando abaixo:
Agora faça novamente o pull da imagem rhel-atomic
:

No exemplo acima, ele buscará a imagem no registry registry.access.redhat.com
1.1.4 - Listando Imagens Locais
Para verificar quais imagens estão disponÃveis localmente, usa-se:

1.1.5 - Removendo Imagens Locais
Para remover as imagens, ou tags, do repositório local, usa-se:
Vamos remover a imagem do rhel atomic baixada no lab anterior:

Agora que temos o ID da imagem, podemos apagá-la:

Caso a imagem já esteja sendo utilizada por um container. o Docker não irá executar essa ação e retornará um erro informando qual o id do container que está utilizando a imagem que desejamos apagar.

Para resolver, basta remover o container que está causando problemas para a gente.

1.1.6 - Executando Containers
A execução de um container significa processar os metadados da imagem e criar um ou mais processos a partir dos dados armazenados. Para tal, usa-se:

No exemplo anterior você deve ter percebido que além de iniciar o container você entrou no isolamento. Para sair usa-se a sequência CTRL+P+Q. Para iniciar o container de forma detached, usa-se:
Caso queira entrar em um container já em execução, para fazer attach no processo já em execução, usa-se:

1.1.7 - Executando imagem do Wordpress
Uma das vantagens do uso de containers é a possibilidade de abstração da complexidade de implantação de um determinado serviço. Vamos rodar agora uma imagem do wordpress e ver o trabalho necessário para colocar esse CMS no ar.
O parametro -p exporta a porta interna do container (80) para a nossa máquina na porta 8080. Esse parâmetro será explicado melhor nos próximos exercÃcios.

Agora podemos abrir nosso browser na página:
http://localhost:8080
Se estiver usando uma VM na nuvem, use seu ip público para acessar o serviço.

Last updated