Docker: Seu primeiro Dockerfile

DeltaOps
3 min readMay 29, 2024

--

Photo by Rubaitul Azad on Unsplash

Vamos criar o nosso primeiro Dockerfile. Vamos supor que temos uma aplicação Python simples com um arquivo app.py que contém o seguinte código:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
return 'Hello, World!'

if __name__ == '__main__':
app.run(host='0.0.0.0', port=8080)

Aqui está o passo a passo para criar o Dockerfile:

  1. Crie um novo arquivo chamado Dockerfile (sem extensão) no mesmo diretório da sua aplicação.
  2. Abra o arquivo Dockerfile em um editor de texto e adicione as seguintes linhas:
# Use a imagem base do Python
FROM python:3.9-slim

# Defina o diretório de trabalho
WORKDIR /app

# Copie os arquivos da aplicação para o diretório de trabalho
COPY . .

# Instale as dependências da aplicação
RUN pip install --no-cache-dir -r requirements.txt

# Defina o comando de execução da aplicação
CMD ["python", "app.py"]

Vamos explicar o que cada linha faz:

  • FROM python:3.9-slim: Essa linha especifica a imagem base que será usada para a construção da imagem do Docker. Neste caso, estamos usando a imagem oficial do Python 3.9 com a tag slim, que é uma versão mais leve da imagem.
  • WORKDIR /app: Essa linha define o diretório de trabalho dentro do container. Todas as ações subsequentes serão executadas neste diretório.
  • COPY . .: Essa linha copia todos os arquivos da aplicação (incluindo o app.py) para o diretório de trabalho dentro do container.
  • RUN pip install --no-cache-dir -r requirements.txt: Essa linha instala as dependências da aplicação, listadas no arquivo requirements.txt.
  • CMD ["python", "app.py"]: Essa linha define o comando que será executado quando o container for iniciado. Ela inicia o script Python app.py.

Agora, crie o arquivo requirements.txt no mesmo diretório da sua aplicação e adicione as seguintes linhas:

Flask==2.0.2

Isso especifica que a aplicação depende da biblioteca Flask, na versão 2.0.2.

  1. Construa a imagem do Docker usando o seguinte comando:
docker build -t minha-aplicacao-python .

Este comando constrói a imagem do Docker usando o Dockerfile e a nomeia como minha-aplicacao-python.

Inicialize um container a partir da imagem recém-criada:

docker run -p 8080:8080 minha-aplicacao-python

Este comando inicia um container a partir da imagem minha-aplicacao-python e mapeia a porta 8080 do container para a porta 8080 do host.

Agora, você pode abrir o seu navegador e acessar http://localhost:8080 para ver a sua aplicação Python em execução dentro do container do Docker.

Parabéns, você acabou de criar o seu primeiro Dockerfile e executar uma aplicação Python em um container do Docker!

Se você precisa administrar seus containers Docker, confira este post a seguir. Ele traz os principais comandos básicos que você pode utilizar para trabalhar com Docker.

Nos acompanhe nas redes sociais e até a próxima!

https://deltaops.com.br/

https://www.linkedin.com/company/deltaopscloud/

Referência:

Escrito por 🖋️ Diogo Lima
Sócio Fundador da Empresa DeltaOps

--

--

DeltaOps
DeltaOps

Written by DeltaOps

Somos uma consultoria especializada em Cloud, DevOps e SRE. Apaixonados por automação, ajudamos empresas em sua jornada para a nuvem com práticas DevOps.

No responses yet