Docker: Listar Portas de Container

DockerBeginner
Pratique Agora

Introdução

Imagine uma cena ambientada na era vitoriana do século XIX, onde os participantes assumem o papel de um Médium. O cenário é uma misteriosa mansão vitoriana, e o objetivo do médium é invocar espíritos do além, desvendando os segredos de containers Dockerizados.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 98%. Recebeu uma taxa de avaliações positivas de 97% dos estudantes.

Explorar as Portas do Container Docker

Neste passo, você começará executando um container Docker e, em seguida, explorará as suas portas expostas.

Primeiramente, vamos executar um container Nginx simples:

docker run -d -p 8080:80 --name my-nginx nginx

Agora, você irá inspecionar as portas que o container está ouvindo:

docker port my-nginx

A saída esperada deve mostrar o mapeamento das portas do container para as portas da máquina host.

80/tcp - > 0.0.0.0:8080
80/tcp - > :::8080

Testar com uma Porta Personalizada

Neste passo, você executará uma aplicação Python personalizada dentro de um container Docker e exporá uma porta personalizada.

Comece criando uma aplicação Python simples em um arquivo chamado app.py:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, Docker!'

if __name__ == '__main__':
    app.run(host="0.0.0.0", debug=True)

Crie um Dockerfile com o seguinte conteúdo para construir uma imagem para a aplicação Python:

FROM python:3.8
WORKDIR /app
COPY . /app
RUN pip install flask
EXPOSE 5000
CMD ["python", "app.py"]

Agora, construa a imagem Docker e execute-a com a porta personalizada 5000 exposta, mapeando a porta exposta para 8081 no host:

docker build -t my-python-app .
docker run -itd -p 8081:5000 --name python-app my-python-app

Assim que o container estiver rodando, teste se a aplicação está acessível adicionando um mapeamento de serviço web no menu superior e visite a URL.

Resumo

Neste laboratório, os participantes foram levados a uma jornada para explorar e entender como listar as portas de containers no Docker. Ao criar e inspecionar as portas de containers Docker, eles obtiveram informações valiosas sobre as capacidades de rede dos containers Docker, permitindo que gerenciassem e solucionassem problemas de implantações de containers de forma mais eficaz.