Como rodar seu script Python no Docker em 5 minutos

Publicado em: 04/03/2026
Tempo de leitura: 9 minutos

A tecnologia de containers revolucionou a forma como desenvolvemos e distribuímos software. Se você já passou pela frustração de um código que funciona perfeitamente na sua máquina, mas apresenta erros ao ser enviado para um servidor ou colega, aprender como rodar seu script Python no Docker em 5 minutos é a solução definitiva. O Docker cria um ambiente isolado, garantindo que todas as dependências, bibliotecas e configurações do sistema operacional sejam exatamente as mesmas, independentemente de onde o contêiner seja executado. Dominar essa ferramenta é um passo essencial no seu roadmap Python, elevando o seu nível técnico de iniciante para um profissional preparado para o mercado de DevOps e Cloud Computing.

O que é Docker e por que usar com Python?

Antes de colocarmos as mãos na massa, é fundamental entender o conceito. Imagine o Docker como uma caixa virtual que contém tudo o que o seu programa precisa para viver: o interpretador, as bibliotecas em Python instaladas e até as variáveis de sistema. Isso é chamado de imagem. Quando você executa essa imagem, ela se torna um container.

Para quem trabalha com Python para automação ou ciência de dados, o Docker resolve o problema de conflitos entre versões de pacotes. Se um projeto exige o Pandas 1.0 e outro o Pandas 2.0, os containers mantêm essas versões separadas sem que uma interfira na outra. De acordo com a documentação oficial da Docker Inc., a containerização permite uma portabilidade sem precedentes, economizando horas de configuração manual de ambientes.

Pré-requisitos para começar

Para seguir este tutorial, você precisa ter duas ferramentas instaladas no seu computador:

  • O Docker Desktop (disponível para Windows, Mac e Linux).
  • Um editor de código, como o VS Code.

Não é necessário ter o Python instalado diretamente na sua máquina física, pois o Docker lidará com isso dentro do contêiner. Se você ainda tem dúvidas sobre como preparar seu computador para programar, vale conferir o guia de instalação e configuração do VS Code no Windows para garantir que sua produtividade seja máxima desde o primeiro minuto.

Passo 1: Criando o Script Python

Vamos começar criando um script simples para testar nosso ambiente. Crie uma pasta no seu computador chamada “meu-projeto-docker” e, dentro dela, crie um arquivo chamado main.py.

Python
import os
import platform

def saudar():
    print("Olá! Este script está rodando dentro de um container Docker!")
    print(f"Sistema Operacional: {platform.system()}")
    print(f"Versão do Python: {platform.python_version()}")
    
    # Exemplo de leitura de ambiente
    usuario = os.getenv("NOME_USUARIO", "Desenvolvedor")
    print(f"Bem-vindo, {usuario}!")

if __name__ == "__main__":
    saudar()

Neste exemplo, usamos o módulo os em Python para demonstrar como o container pode interagir com configurações externas. É uma prática comum ler variáveis de ambiente Python para gerenciar senhas ou chaves de API sem expô-las no código-chave.

Passo 2: Criando o arquivo de dependências

Mesmo que nosso script atual use apenas bibliotecas padrão, a maioria dos projetos reais precisa de pacotes externos. Crie um arquivo chamado requirements.txt na mesma pasta. Para este exemplo, vamos fingir que precisamos da biblioteca requests.

requests==2.31.0

Gerenciar dependências é vital para evitar erros de execução. Se você costuma instalar bibliotecas no Python via terminal com certa frequência, sabe o quanto é importante fixar as versões para evitar que atualizações futuras quebrem seu projeto.

Passo 3: Escrevendo o seu Dockerfile

O Dockerfile é o coração do processo. Ele é um arquivo de texto sem extensão que contém as instruções para o Docker construir a imagem. Crie um arquivo chamado Dockerfile (com o D maiúsculo e sem extensão) e insira o conteúdo abaixo:

Dockerfile
# 1. Escolha uma imagem base oficial do Python
FROM python:3.11-slim

# 2. Defina o diretório de trabalho dentro do container
WORKDIR /app

# 3. Copie o arquivo de requisitos para o container
COPY requirements.txt .

# 4. Instale as dependências
RUN pip install --no-cache-dir -r requirements.txt

# 5. Copie o restante dos arquivos do seu projeto
COPY . .

# 6. Defina o comando para rodar o script
CMD ["python", "main.py"]

Dica de Especialista: Usar versões -slim das imagens base ajuda a reduzir drasticamente o tamanho final da sua imagem, tornando o download e a execução muito mais velozes.

Passo 4: Construindo a Imagem Docker

Agora, abra o seu terminal (ou Prompt de Comando) e navegue até a pasta onde salvou os arquivos. Vamos usar o comando build para criar nossa imagem. Imagine que este comando está “empacotando” tudo o que definimos até agora.

Bash
docker build -t meu-script-python .

O parâmetro -t serve para dar um “tag” (nome) à imagem. O ponto final . indica ao Docker que o Dockerfile está na pasta atual. Se você encontrar dificuldades nesta etapa, revise se o Docker Desktop está devidamente aberto e rodando em segundo plano.

Passo 5: Executando o Container

Com a imagem criada, estamos prontos para a ação. Execute o seguinte comando para ver seu script Python ganhando vida dentro do ambiente isolado:

Bash
docker run meu-script-python

Você verá no terminal a mensagem de saudação e as informações do sistema operacional simulado. Se quiser testar o envio de uma variável de ambiente, você pode rodar:

Bash
docker run -e NOME_USUARIO=Carlos meu-script-python

Trabalhando com múltiplos arquivos e módulos

Conforme seu projeto cresce, você provavelmente terá uma estrutura de pastas mais complexa. O Docker lida facilmente com isso. O comando COPY . . no Dockerfile garante que toda a estrutura de módulos e pacotes no Python seja transferida para dentro do container.

Se você estiver desenvolvendo algo mais robusto, como criar APIs com FastAPI, precisará expor portas de rede para acessar o serviço pelo navegador. O Docker permite mapear portas da sua máquina para o container de forma transparente, facilitando o desenvolvimento de aplicações web modernas.

Dicas de Otimização para Imagens Python

Um erro comum é criar imagens gigantescas de 1GB ou mais. Para evitar que seu container Python fique pesado, siga estas boas práticas recomendadas pela Python Software Foundation:

PráticaBenefício
Arquivos .dockerignoreEvita copiar arquivos desnecessários (como pastas __pycache__ ou ambientes virtuais venv).
Multi-stage buildsSepara o ambiente de compilação do ambiente de execução final.
Camadas de CacheMantenha o comando pip install antes de COPY . . para evitar reinstalar tudo a cada pequena mudança no código.

Por que aprender Docker hoje?

No cenário atual de tecnologia, saber apenas escrever código não é mais suficiente. Entender a infraestrutura onde esse código roda é o que diferencia redatores de código de verdadeiros engenheiros de software. O Docker não serve apenas para scripts simples; ele é a base para orquestradores como Kubernetes, usados pelas maiores empresas do mundo para gerenciar bilhões de requisições por segundo.

Além disso, rodar seu script em Docker facilita muito o processo de scripts executáveis Python compartilháveis. Em vez de enviar um arquivo .py e torcer para que o destinatário tenha tudo instalado, você envia apenas a imagem Docker ou o Dockerfile, garantindo 100% de sucesso na execução.

Código Completo do Projeto

Aqui está a estrutura final de todos os arquivos necessários reunidos para sua referência rápida. Salve-os na mesma pasta:

Python
# --- ARQUIVO: main.py ---
import os
import platform

def iniciar():
    print("--- INICIANDO AMBIENTE DOCKER ---")
    print(f"Versão OS Interna: {platform.platform()}")
    print(f"Desenvolvido por: {os.getenv('AUTOR', 'Academify')}")
    print("Obrigado por usar Python com Docker!")

if __name__ == "__main__":
    iniciar()

# --- ARQUIVO: requirements.txt ---
# Adicione suas bibliotecas aqui, uma por linha
requests==2.31.0

# --- ARQUIVO: Dockerfile ---
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["python", "main.py"]

# --- COMANDOS TERMINAL ---
# Build: docker build -t tutorial-python-docker .
# Run: docker run -e AUTOR=SeuNome tutorial-python-docker

Ao dominar esses passos básicos, você terá a confiança necessária para escalar seus projetos. Seja criando um chatbot OpenAI Python ou automatizando tarefas complexas de rede, o Docker será seu melhor aliado para garantir consistência e profissionalismo em cada linha de código entregue.

Perguntas Frequentes

Preciso instalar Python na minha máquina para usar Docker?

Não. O Docker baixa a imagem oficial do Python e executa o código dentro dela. Você só precisa do Docker instalado.

Qual a diferença entre imagem e container?

A imagem é o arquivo estático (como um instalador). O container é a instância dessa imagem em execução (como o programa aberto).

O Docker deixa o Python mais lento?

A perda de performance é mínima e imperceptível para a maioria das aplicações, pois o Docker não é uma máquina virtual completa, mas sim um isolamento de processos.

Como faço para salvar dados gerados pelo script no meu computador?

Você pode usar “Volumes” no Docker para mapear uma pasta do seu PC com uma pasta dentro do container.

Como rodar um script que tem interface gráfica no Docker?

Isso é mais complexo, pois containers são focados em processos de terminal. Para interfaces gráficas, recomenda-se rodar diretamente no sistema ou usar ferramentas de streaming de X11.

Como vejo os containers que estão rodando agora?

Use o comando “docker ps” no seu terminal para listar todos os containers ativos.

Posso usar o Docker para rodar Python 2?

Sim, basta alterar a primeira linha do Dockerfile para “FROM python:2.7”, mas lembre-se que o Python 2 foi descontinuado.

Como apagar imagens antigas do Docker?

Use o comando “docker image prune” para remover imagens que não estão sendo utilizadas e liberar espaço em disco.

Para continuar evoluindo seu conhecimento em Python e infraestrutura, experimente testar diferentes versões da linguagem alterando apenas a tag da imagem base no seu Dockerfile. Essa flexibilidade é o que torna o ecossistema Python tão poderoso para desenvolvedores modernos.

Compartilhe:

Facebook
WhatsApp
Twitter
LinkedIn

Conteúdo do artigo

    Artigos relacionados

    Fundamentos
    Foto do Leandro Hirt

    Como criar um gerenciador de senhas simples com Python

    A segurança digital tornou-se uma prioridade no cotidiano de qualquer pessoa que navega na internet. Com dezenas de contas e

    Ler mais

    Tempo de leitura: 12 minutos
    01/03/2026
    Fundamentos
    Foto do Leandro Hirt

    Como criar um bot de WhatsApp com Python em minutos

    Você já pensou em como seria prático ter um atendente virtual respondendo seus clientes ou amigos 24 horas por dia?

    Ler mais

    Tempo de leitura: 10 minutos
    01/03/2026
    FundamentosBibliotecas
    Foto do Leandro Hirt

    Descubra como gerar números aleatórios seguros com secrets

    Você já parou para pensar como o seu computador decide qual será o próximo número em um sorteio? No mundo

    Ler mais

    Tempo de leitura: 9 minutos
    27/02/2026
    Fundamentos
    Foto do Leandro Hirt

    Como automatizar postagens no Twitter com Python

    Imagine a possibilidade de manter o seu perfil no Twitter (X) sempre ativo, compartilhando conteúdos relevantes, notícias de última hora

    Ler mais

    Tempo de leitura: 12 minutos
    26/02/2026
    Fundamentos
    Foto do Leandro Hirt

    Como criar um pacote pip instalável em Python passo a passo

    Criar seu próprio pacote Python e disponibilizá-lo para a comunidade através do gerenciador de pacotes pip é um dos marcos

    Ler mais

    Tempo de leitura: 8 minutos
    26/02/2026
    Fundamentos
    Foto do Leandro Hirt

    Como executar comandos do terminal com Python em 2 minutos

    Aprender a interagir com o sistema operacional é um dos grandes marcos na jornada de quem está decidindo aprender Python.

    Ler mais

    Tempo de leitura: 9 minutos
    25/02/2026