Introdução
Imagine que você está nas antigas pradarias de Gelasian, onde cavalos selvagens vagam livremente e o vínculo entre um domador e as feras indomáveis é vital para a sobrevivência. Seu papel é o de um domador de cavalos selvagens, encarregado do desafio de utilizar o Docker para gerenciar containers de forma eficiente nesta vasta paisagem.
Dominando a Criação de Containers
Nesta etapa, você aprenderá os fundamentos da criação e do gerenciamento de containers Docker para sobreviver nas pradarias selvagens.
Tarefas
- Criar um container Nginx chamado
mynginxe garantir que ele esteja em execução. - Iniciar um container Alpine e verificar seu status.
- Implantar um container Ubuntu com um volume específico anexado (montando o diretório do host
~/projectno diretório do container/app).
Requisitos
- Você deve realizar todas as operações dentro do diretório
/home/labex/project. - Utilize os seguintes comandos:
- Para criar containers:
docker run - Para verificar o status dos containers:
docker ps - Para anexar um volume:
docker run -v
- Para criar containers:
Exemplo
Após concluir as tarefas, a saída do comando docker ps deve exibir os containers em execução, incluindo informações relevantes como ID do container, imagem e status.
labex:~/ $ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1983f85f03d4 ubuntu "sleep 3600" 22 seconds ago Up 21 seconds ubuntu_container
4231996cae33 alpine "sleep 3600" 2 minutes ago Up 2 minutes alpine_container
519eadd3ced5 nginx "/docker-entrypoint.…" 2 minutes ago Up 2 minutes 80/tcp mynginx
Rede e Comunicação entre Containers
Nesta etapa, você mergulhará no mundo das redes de containers e na comunicação para estabelecer uma conectividade contínua por todas as pradarias.
Tarefas
- Criar uma rede personalizada chamada
mynetworkpara os containers. - Implantar um container Alpine chamado
myalpinena rede personalizada e garantir que ele consiga se comunicar com outro container chamadomypython(baseado na imagem Python) na mesma rede.
Requisitos
- Todas as operações devem ser mantidas dentro do diretório
/home/labex/project. - Utilize os seguintes comandos:
- Para criar uma rede personalizada:
docker network create - Para conectar containers a uma rede:
docker network connect
- Para criar uma rede personalizada:
Exemplo
Ao concluir as tarefas, a rede personalizada deve estar visível ao executar docker network ls, e o container Python deve se comunicar com sucesso com outros containers dentro da rede.
Visualize a rede:
labex:~/ $ docker network ls
NETWORK ID NAME DRIVER SCOPE
1a367e6cc4e5 bridge bridge local
91199fc6ad2e host host local
32e2857073a9 minikube bridge local
92d3b71b7efd mynetwork bridge local
1078d2c781b6 none null local
Verifique a conexão dos containers via ping:
labex:~/ $ docker exec myalpine ping mypython
PING mypython (172.18.0.3): 56 data bytes
64 bytes from 172.18.0.3: seq=0 ttl=64 time=0.153 ms
64 bytes from 172.18.0.3: seq=1 ttl=64 time=0.072 ms
64 bytes from 172.18.0.3: seq=2 ttl=64 time=0.069 ms
Resumo
Neste desafio, você assumiu o papel de um domador de cavalos selvagens nas antigas pradarias, dominando a arte de gerenciar containers Docker. Ao concluir as tarefas e compreender as soluções, você adquiriu habilidades essenciais em gerenciamento e rede de containers Docker, fundamentais para sobreviver no mundo indomado do Docker.



