Docker/Artigo

    Portainer: gerenciar stacks Docker pela interface web

    Portainer é uma interface web para gerenciar Docker que permite criar e atualizar stacks (docker-compose.yml) via browser, sem SSH. Uma Stack no Portainer é um docker-compose.yml executado pelo Portainer — você cola o conteúdo na interface ou aponta para um repositório Git. O Portainer também mostra logs, stats de CPU/memória e permite abrir shell nos containers diretamente no browser.

    Criar uma stack no Portainer

    Stacks no Portainer são criadas via menu Stacks → Add stack. Três métodos disponíveis:

    Dica
    Web editor: cole o docker-compose.yml diretamente na interface. Mais simples, ideal para stacks pequenas. Upload: faça upload de um arquivo .yml do seu computador. Git repository: Portainer baixa e aplica o Compose de um repositório Git — atualizações automáticas (polling) disponíveis na versão Business. Por padrão, use Web editor para stacks internas e Git repository para stacks de infraestrutura com versionamento.

    Variáveis de ambiente em stacks Portainer

    No Portainer, você pode definir variáveis de ambiente na aba "Environment variables" ao criar a stack — equivale ao arquivo .env:

    yaml
    # No docker-compose.yml da stack, use variáveis normalmente:
    services:
      app:
        image: minha-app:latest
        environment:
          - DATABASE_URL=${DATABASE_URL}
          - SECRET_KEY=${SECRET_KEY}
    
    # No Portainer (aba "Environment variables"):
    # DATABASE_URL = postgres://user:senha@db:5432/mydb
    # SECRET_KEY   = chave_secreta_aqui
    
    # As variáveis ficam salvas no Portainer e não precisam ser
    # re-inseridas a cada redeploy
    Atenção
    Variáveis de ambiente em stacks Portainer ficam armazenadas no banco do Portainer (volume portainer_data). Faça backup desse volume — ele contém todas as configurações das suas stacks.

    Atualizar uma stack (redeploy)

    Para atualizar uma stack existente no Portainer:

    Dica
    1. Acesse Stacks → nome da stack. 2. Edite o Compose no editor (se precisar mudar versões ou configurações). 3. Se você só quer atualizar as imagens sem mudar o Compose: marque "Re-pull image and redeploy" antes de salvar. 4. Clique em "Update the stack". O Portainer faz docker compose pull + docker compose up -d automaticamente. Containers que não mudaram não são recriados.

    Monitorar containers via Portainer

    O Portainer oferece visibilidade em tempo real de todos os containers:

    Dica
    Containers → selecione um container: - Stats: gráfico de CPU, memória, network I/O e disk I/O em tempo real. - Logs: tail dos logs do container (equivalente a docker logs -f) sem SSH. - Console: terminal interativo no container (equivalente a docker exec -it). - Inspect: JSON completo do docker inspect. Para stacks inteiras: Stacks → nome_da_stack → mostra todos os containers do stack com status health.

    Portainer CE vs Business

    O Portainer tem duas versões: Community Edition (grátis, código aberto) e Business (pago):

    Dica
    CE (gratuita): gerenciamento de stacks via Web editor e upload, monitoramento básico, multi-host via Portainer Agent, git deployment manual. Cobre 100% das necessidades de equipes pequenas e médias. Business: auto-update de stacks via Git (polling/webhook), RBAC granular, secrets management nativo, suporte oficial. Necessário para times maiores com CI/CD integrado ao Portainer. Para a maioria dos casos, CE é mais que suficiente.

    $ runstack deploy --plan starter

    Não quer configurar manualmente?

    Não quer configurar manualmente? Implante o Portainer em menos de 3 minutos com a Runstack. Infraestrutura da OPEN DATACENTER, com servidores no Brasil.

    Perguntas frequentes