Como Criar um Container Docker para Rodar Python, Jupyter Notebook, Scikit-learn e Keras
Neste tutorial, você aprenderá como criar e configurar um container Docker para rodar um ambiente de ciência de dados completo, incluindo Python, Jupyter Notebook, Scikit-learn e Keras. Esse setup é ideal para cientistas de dados e engenheiros que precisam de um ambiente portátil, padronizado e fácil de configurar.
Requisitos
Antes de começar, você precisa ter os seguintes itens instalados:
- Docker
- Um editor de texto, como o VSCode
Passo 1: Criar um Arquivo Dockerfile
O primeiro passo é criar um arquivo Dockerfile, que será usado para configurar o ambiente do container. Esse arquivo conterá todas as instruções necessárias para instalar o Python, Jupyter Notebook, Scikit-learn e Keras.
Conteúdo do Dockerfile
# Escolhe uma imagem base oficial do Python
FROM python:3.9
# Define o diretório de trabalho dentro do container
WORKDIR /usr/src/app
# Instala as dependências do sistema necessárias
RUN apt-get update && \
apt-get install -y --no-install-recommends \
build-essential \
&& rm -rf /var/lib/apt/lists/*
# Instala Jupyter, Scikit-learn e Keras
RUN pip install --no-cache-dir jupyterlab scikit-learn keras tensorflow
# Exponha a porta usada pelo Jupyter Notebook
EXPOSE 8888
# Define o comando padrão para rodar o Jupyter Notebook
CMD ["jupyter", "notebook", "--ip=0.0.0.0", "--port=8888", "--no-browser", "--allow-root"]
Explicação dos Comandos
FROM python:3.9: Utiliza uma imagem base oficial do Python 3.9.WORKDIR /usr/src/app: Define o diretório de trabalho.RUN apt-get update && ...: Instala pacotes essenciais de build.RUN pip install: Instala o Jupyter Lab, Scikit-learn, Keras e TensorFlow.EXPOSE 8888: Expõe a porta 8888 para acesso ao Jupyter Notebook.CMD: Inicia o Jupyter Notebook quando o container for iniciado.
Passo 2: Construir a Imagem Docker
Com o arquivo Dockerfile criado, o próximo passo é construir a imagem Docker.
Comando para construir a imagem:
docker build -t python-datascience .
Neste comando:
-t python-datascience: Define o nome da imagem comopython-datascience.- O ponto (
.) no final indica o diretório atual, onde está localizado oDockerfile.
Passo 3: Rodar o Container
Agora, com a imagem criada, você pode rodar o container.
Comando para rodar o container:
docker run -p 8888:8888 -v $(pwd):/usr/src/app -it python-datascience
Neste comando:
-p 8888:8888: Mapeia a porta 8888 do host para o container, permitindo o acesso ao Jupyter.-v $(pwd):/usr/src/app: Monta o diretório atual no host para o diretório de trabalho no container.-it: Permite interação com o terminal do container.
Quando o container iniciar, o terminal exibirá uma URL para acessar o Jupyter Notebook, algo como:
http://127.0.0.1:8888/?token=seu_token_aqui
Abra essa URL no navegador para começar a usar o Jupyter com Python, Scikit-learn e Keras!
Passo 4: Salvando e Compartilhando sua Imagem
Se você quiser salvar e compartilhar sua imagem Docker, você pode empurrar para o Docker Hub.
Comando para salvar sua imagem localmente:
docker save -o python-datascience.tar python-datascience
Comando para fazer o push para o Docker Hub:
- Primeiro, faça login no Docker:
docker login
- Marque a imagem com seu nome de usuário do Docker Hub:
docker tag python-datascience seu_usuario/python-datascience:latest
- Empurre a imagem para o Docker Hub:
docker push seu_usuario/python-datascience:latest

Leave a comment