Já ouviste falar de Dockerception?
Bem, segure seu chapéu. Estamos descendo a toca do coelho.
Portainer, a interface web que você está prestes a instalar em cima do Docker, é ele mesmo um container Docker.
É uma ferramenta que funciona exatamente naquilo que gerencia. Você a inicializa com uma única linha de comando docker run, e a primeira coisa que ela faz é voltar através de um pequeno buraco no host (um arquivo de socket) e pedir ao daemon do Docker para mostrar todos os outros contêineres, incluindo a si mesmo. A partir dessa aba do navegador, você pode atualizar o Portainer. Reiniciar o Portainer. E gerenciar todos os seus outros contêineres Docker.
A interface que você está olhando está a um clique de remover a interface que você está olhando.
Em um VPS onde já estás pagando pela caixa e já estás confortável com SSH, o Portainer se encaixa limpo no topo do Docker sem alterar o funcionamento de nada por baixo.
Esse é o valor.
Uma caixa de 4 GB executa Docker, Portainer e uma pequena frota de apps auto-hospedados sem esforço. E o custo fica em torno de algumas assinaturas de streaming por mês. Suficiente para rodar a automação residencial, o armazenamento de fotos da família, o assistente de IA e o boletim informativo que você vem ameaçando lançar — em um servidor que você realmente possui.
Aqui está como colocá-lo em funcionamento, bloqueá-lo e começar a ver valor.
O Que É Portainer, Exatamente?

Portainer é uma interface de usuário web que funciona como um contêiner Docker e gerencia seus outros contêineres através do socket Docker.
É basicamente um frontend baseado em navegador para os mesmos comandos Docker que você digitaria manualmente, além de gerenciamento de stack, acesso baseado em funções (se você atualizar) e uma visão do painel de controle de CPU e memória.
A conexão de socket é o que faz funcionar. A vinculação parece com -v /var/run/docker.sock:/var/run/docker.sock no comando de instalação, e essa única linha está fazendo todo o trabalho pesado. Sem ela, o Portainer é uma UI para um host Docker vazio. Com ela, o Portainer é o controle remoto do host Docker.
Uma coisa a ter em mente: qualquer processo que possa alcançar /var/run/docker.sock pode efetivamente executar qualquer coisa como root no host. Isso é uma funcionalidade quando é o Portainer que faz o pedido e um problema quando é algum container que você iniciou na semana passada e esqueceu que tinha dado acesso ao socket.
Trate a vinculação de soquete como uma capacidade privilegiada e audite todos os outros contêineres que desejam uma.
Você Precisa de Portainer Se Já Tem Docker?
Não. Docker funciona bem a partir do terminal, e muitas pessoas executam alguns contêineres por anos sem nunca instalar uma interface gráfica por cima.
Você quer o Portainer se:
- Você vai manipular mais de dois ou três contêineres Docker em diferentes aplicativos.
- Você prefere clicar em “reiniciar” a digitar um comando Compose às 23h.
- Você está compartilhando acesso com alguém que não vive em um terminal.
- Você quer implementar atualizações de pilha de um repositório Git sem escrever um script de implantação.
Pule o Portainer se:
- Você está executando um ou dois contêineres que raramente mudam.
- Você já está confortável com o Docker Compose, e está feliz em continuar assim.
O próprio Docker já é suficientemente mainstream para que esta não seja uma decisão marginal. De acordo com a Pesquisa de Desenvolvedores do Stack Overflow de 2025, o Docker é a plataforma de contêineres mais adotada entre os desenvolvedores, com mais de 70% de uso — o maior salto anual de qualquer tecnologia rastreada pela pesquisa. O projeto Portainer tem aproximadamente 37.000 estrelas no GitHub.
Outras opções existem. Coolify avança mais em direção a abstrações no estilo PaaS, e Dokploy se situa em um território semelhante com uma pegada mais leve — mas Portainer é o primeiro que a maioria dos guias de instalação escolhe.
Se você vive no tmux e executa um aplicativo, feche esta aba. Você está bem. Se você está executando quatro aplicativos auto-hospedados e pesquisou “O que são registros do Docker novamente?” duas vezes neste mês, continue lendo.
Quão Grande Um VPS Você Precisa Para Executar Docker e Portainer?
Um VPS de 4 GB lida com o Portainer e um pequeno conjunto de contêineres de projetos paralelos confortavelmente.
Portainer recomenda um host com pelo menos 2 GB de RAM e 1 núcleo de CPU, embora o processo do servidor Portainer fique inativo em torno de 100 MB. O daemon Docker adiciona algumas centenas de MB de sobrecarga antes de iniciar qualquer um dos seus aplicativos.
Aqui está como isso se aplica a cargas de trabalho reais:

Na DreamHost, nosso Self-Managed VPS oferece quatro níveis de Stack baseados em RAM (Stack 4, 8, 16 e 32), com o nível inicial Stack 4 dimensionado exatamente para este tipo de pequeno host Docker. (E sim, armazenamento NVMe e acesso completo ao Root estão incluídos.)
Se estás indeciso sobre se a auto-hospedagem vale a pena pelo tempo, o Stack 4 é o tamanho em que a matemática começa a trabalhar a teu favor desde o primeiro dia.
Uma nota sobre armazenamento: A pegada de armazenamento do Portainer é mínima — ele armazena apenas seu próprio banco de dados de configuração. A própria documentação do Portainer recomenda desempenho de nível SSD (≈3,5 MB/s sustentados, mais de 30.000 IOPS, <10ms de latência de escrita), o que qualquer unidade NVMe moderna atende confortavelmente. O disco só se torna uma preocupação real se você estiver executando containers pesados em banco de dados como Postgres ou MySQL ao lado dele. Se o seu VPS estiver em um disco rígido em 2026, a interface do Portainer parecerá lenta muito antes que a RAM. Nosso conselho: atualize o disco antes do plano.
Como Instalar o Docker e o Portainer em um VPS?

São necessários seis passos e aproximadamente 30 minutos, a maior parte do tempo esperando pela obtenção das imagens.
1. Escolha Uma Distribuição Linux
Ubuntu 22.04 ou 24.04 LTS é o caminho de menor resistência. Ubuntu é o que o VPS Auto-Gerenciado da DreamHost executa por padrão, e a maioria dos trechos de instalação do Docker e tópicos de ajuda da comunidade o assumem. Debian e AlmaLinux também funcionam, no entanto.
Não tem certeza de qual versão do Ubuntu está utilizando? Aprenda cinco maneiras de verificar.
2. Instale o Docker do repositório oficial
Não apt install docker.io. Isso instala uma versão antiga do Docker do arquivo Ubuntu.
Em vez disso, use o repositório apt próprio do Docker conforme as documentações oficiais de instalação do Docker, que adiciona a chave GPG do Docker, o repositório e o docker-ce juntamente com o plugin Compose de uma só vez.
3. Verifique Se O Docker Está Em Funcionamento
Execute docker run hello-world.
Se você não receber a mensagem “Hello from Docker!”, corrija o daemon antes de adicionar o Portainer por cima.
4. Criar um volume persistente para os dados do Portainer
Em seguida, execute docker volume create portainer_data.
Manter o banco de dados do Portainer em um volume Docker (não dentro do contêiner) significa que uma atualização do Portainer não apagará sua configuração.
5. Execute a Edição Comunitária do Portainer
Use o comando oficial de instalação do documento de instalação do Linux Portainer:
docker run -d
-p 8000:8000
-p 9443:9443
--name portainer
--restart=always
-v /var/run/docker.sock:/var/run/docker.sock
-v portainer_data:/data
portainer/portainer-ce:lts Vamos analisar isso linha por linha:
-dexecuta de forma desanexada.-p 9443:9443é a interface de usuário web do Portainer em HTTPS.-p 8000:8000é o túnel do Edge Agent; você só precisa dele se for conectar ambientes remotos (Docker, Swarm, ou Kubernetes) via Edge Agents mais tarde, então ignore isso em uma instalação em um único host.--restart=alwaysfaz com que o Portainer reinicie após um reboot.-vsão as flags para o bind do socket e o volume persistente do passo 4.:ltstag é o canal de suporte de longo prazo do Portainer — a construção estável recomendada para produção.
6. Abra a Interface do Usuário e crie sua conta de administrador
Direcione seu navegador para https://YOUR_VPS_IP:9443.
Clique através do aviso de certificado autoassinado. Você chegará na tela de “criar o usuário administrador inicial”. Escolha um nome de usuário que não seja admin, defina uma senha forte e guarde-a em algum lugar seguro. E… você entrou!
Por Que o Portainer Acabou de Expirar para Mim?
Porque o Portainer espera exatamente cinco minutos para alguém reivindicá-lo na primeira instalação. Se ninguém o fizer, ele tranca a porta.
Literalmente do FAQ próprio da Portainer:
“Como medida de segurança, quando o Portainer é instalado pela primeira vez, ele aguardará 5 minutos para que um usuário administrador seja criado. Se um usuário não for criado dentro desses 5 minutos, o Servidor Portainer deixará de escutar as solicitações.“
Tradução: se você passou a Etapa 5 fazendo um sanduíche, agora sua instalação está se recusando a conversar com você — e você não fez nada de errado.
A correção é simples. Execute docker restart portainer.
Isso reinicia o contêiner, oferece mais cinco minutos de janela e te leva à tela de criação de administração. Repita conforme necessário. Bem-vindo à auto-hospedagem.
Se você está criando scripts para a instalação de uma frota (Ansible, Terraform, um pipeline de implantação), o Portainer aceita uma flag --admin-password-file na inicialização que elimina totalmente o timer, criando o usuário administrador a partir de um arquivo na primeira execução. O documento de instalação abrange a sintaxe. Para uma instalação única em VPS, o truque de reiniciar é suficiente.
Como Você Impede Que O Docker Contorne Seu Firewall?

Isso surpreende as pessoas na produção, não apenas no desenvolvimento — então preste atenção.
Quando você docker run -p 80:80, a porta publicada está acessível pela internet pública mesmo que o ufw status mostre a porta 80 como negada. O Docker roteia o tráfego do container na tabela NAT, o que significa que os pacotes são desviados antes de chegarem às cadeias INPUT e OUTPUT que o UFW utiliza.
O UFW não está quebrado. Ele está apenas no corredor errado.
A correção que o próprio Docker recomenda é a cadeia de iptables DOCKER-USER, reservada para regras de administrador para que o Docker não as substitua na reinicialização. (As regras não sobrevivem a um reinício completo do host por conta própria — persista-as com iptables-persistent ou um serviço systemd; ufw-docker cuida disso para você.) A ferramenta padrão da comunidade para integrar o UFW ao DOCKER-USER é chaifeng/ufw-docker, que automatiza a geração de regras.
Instale-o e depois verifique com um escaneamento de portas de fora do seu VPS que as portas que você acredita que estão fechadas estão realmente fechadas.
Eu vi isso pegar um engenheiro habilidoso duas vezes na mesma semana, primeiro em um computador pessoal, depois em um de um cliente. O UFW disse uma coisa, a internet pública disse outra, e a verdade estava no iptables.
Para o Portainer especificamente, a porta 9443 é publicada, o que significa que a interface administrativa está acessível de qualquer lugar na internet pública assim que o contêiner é iniciado. Duas opções razoáveis: restringir a 9443 através de regras DOCKER-USER (permitir apenas o seu IP de casa ou escritório), ou protegê-la com um túnel VPN como o WireGuard para que a interface nunca tenha um IP público.
O Que Você Deve Bloquear Logo Após o Primeiro Login?
Você está dentro. Cinco coisas que vale a pena fazer antes de fechar essa aba do navegador, segundo o próprio guia de segurança da Portainer:
- Forçar Apenas HTTPS. Portainer vem com HTTPS na porta 9443 por padrão, mas não o impõe. Ative a opção em Configurações para que a UI recuse completamente o HTTP.
- Substituir o certificado autoassinado. Faça o upload de um certificado que você gerou, ou coloque o Portainer atrás de um proxy reverso NGINX com um certificado da Let’s Encrypt. Depois do primeiro dia, clicar através do aviso do navegador toda vez é um hábito que você vai se arrepender.
- Use um nome de usuário administrador real. “Admin” é o primeiro palpite em qualquer tentativa de enchimento de credencial. Escolha algo específico para você.
- Restrinja a UI a uma VPN. WireGuard é o padrão recomendado pelo próprio Portainer. Um 9443 público com credenciais fortes é aceitável. Um 9443 que só pode ser alcançado em uma rede privada é melhor.
- Audite a vinculação do socket Docker. Qualquer coisa com acesso de leitura a
/var/run/docker.sockpode executar qualquer coisa como root no host. Não monte o socket casualmente em outros contêineres. Cada vinculação adicional é um novo caminho para o host. Se um contêiner afirma que precisa do socket, pergunte por que — e considere um proxy de socket se a resposta for “para monitoramento”.
Como Você Realmente Usa o Portainer No Dia a Dia?
A recompensa por instalar o Portainer é o dia em que você para de usar SSH para reiniciar um contêiner problemático e começa a clicar em um botão em vez disso. A maior recompensa é a gestão de stacks.
Uma pilha Portainer é um aplicativo multi-container definido por um arquivo Docker Compose. Tudo o que você pode expressar como um docker-compose.yml você pode implantar como uma pilha, com três principais rotas (excluindo modelos personalizados) conforme a documentação oficial das pilhas:
- Cole o Compose na interface
- Carregue um arquivo Compose
- Aponte o Portainer para um repositório Git

O caminho do Git é o que importa. Você direciona o Portainer para um repositório público ou autenticado e um caminho para docker-compose.yml. O Portainer ou verifica o repositório em uma programação (o padrão é de cinco minutos) ou aguarda um webhook do GitHub. Quando o arquivo Compose muda a montante, o Portainer puxa e redespliega automaticamente.
Essa é a versão auto-hospedada de “deploy on push” sem pagar por um PaaS pelo privilégio.
As pequenas vitórias diárias também se acumulam. Pense em registros em um painel em vez de docker logs -f, reinicializações com um clique, reconstrução de uma pilha a partir de um botão e gráficos de recursos que você pode analisar em três segundos em vez de executar estatísticas do Docker.
O Portainer também suporta hosts Docker remotos através do seu Agente Edge, que é como um assistente de IA auto-hospedado ou servidor de mídia se distribui por várias caixas.
Quanto Custa o Portainer? (E Quando o Gratuito Deixa de Ser Gratuito?)
A Edição Comunitária do Portainer é gratuita e ilimitada, ponto final. A instalação pela qual você acabou de passar é totalmente funcional para um host com quantos contêineres seu VPS puder comportar. Sem limite de nós, sem expiração, sem telas de alerta.
| Edição | Custo | Nós | Melhor para |
|---|---|---|---|
| Edição Comunitária | Gratuito, de código aberto | Ilimitados | Projetos pessoais, laboratório doméstico, auto-hospedagem em um único VPS |
| Edição Comercial (Versão 3) | Gratuito perpetuamente | Até 3 | Pequenos laboratórios domésticos que desejam RBAC e registros de auditoria |
| Business Starter | A partir de $99/mês | 5, 10 ou 15 | Pequenas equipes gerenciando infraestrutura real |
| Business Scale | A partir de $199/mês | Até 25 | Equipes em crescimento que precisam de suporte 9×5 |
| Empresarial | Cotação | Ilimitados | Necessidades de conformidade e suporte 24/7 |
O nível gratuito perpétuo de três nós (chamado Take 3) vale a pena conhecer: você renova a licença anualmente sem custo, desde que permaneça com três nós ou menos.
Esse é o plano certo para a maioria dos laboratórios domésticos e pequenas equipes que desejam controle de acesso baseado em funções (RBAC), registros de auditoria e registro de atividades sem custos. Acima disso, o Business Starter custa $99/mês na página de preços empresariais do Portainer para 5/10/15 nós; Scale é $199/mês até 25 nós; e Enterprise é sob consulta.
Para quase todos que estão lendo isso, a melhor escolha é a Edição Comunitária. Ela servirá um auto-hospedeiro de VPS único pela vida útil do servidor. As edições Business só justificam seu custo quando você está gerenciando contagens reais de nós, precisa de RBAC em uma equipe, ou requer suporte comercial para conformidade.
Deve Adicionar Portainer ou Ignorá-lo?
Aqui está a resposta honesta de duas frases:
✅ Se vais compartilhar este servidor, fazer deploy a partir do Git, ou rodar mais de três containers daqui a um ano, instala o Portainer enquanto o host está novo e os teus hábitos ainda estão se formando em torno dele.
❌ Se você estiver executando um aplicativo silencioso e estiver feliz no terminal, não sentirá falta da interface de usuário que não instalou.
A verdadeira questão não é Portainer versus não Portainer. É se a auto-hospedagem é a escolha certa para você — e você respondeu isso quando abriu esta aba.
Um VPS de 4 GB, Docker e Portainer CE levam você mais longe do que a maioria das pessoas espera — um stack de automação, um servidor de fotos, uma plataforma de newsletter e um assistente local de IA — por menos do que você provavelmente paga por dois serviços de streaming que mal assiste.
Isso não é um mau negócio para uma caixa que você realmente possui.
Perguntas Frequentes Sobre Docker e Portainer
Para Que Serve O Portainer?
Portainer é usado para gerenciar contêineres Docker, Docker Swarm e Kubernetes por meio de uma interface web. Ele é executado como um contêiner Docker, conecta-se ao socket Docker do host e oferece uma visão e controle do navegador sobre todos os outros contêineres no host — iniciando e parando contêineres, implantando pilhas de múltiplos contêineres, visualizando registros e gerenciando o acesso do usuário sem precisar de SSH.
Preciso do Portainer se tenho o Docker?
Não, você não precisa do Portainer para usar o Docker. O Docker funciona completamente pelo terminal, e muitos autogerenciadores nunca instalam uma interface gráfica por cima.
Portainer vale a pena quando você está gerenciando mais de dois ou três containers, compartilhando acesso com alguém que não vive em um terminal, ou implementando atualizações de stack de um repositório Git. Ignore se você está executando um ou dois containers estáveis e se sente confortável com o Docker Compose.
Em que porta o Portainer opera?
O Portainer é executado na porta 9443 por padrão para acesso HTTPS à interface de usuário web, além da porta 8000 para o túnel do Edge Agent se você conectar hosts Docker remotos posteriormente. A porta 8000 é opcional em uma instalação em um único host; você pode remover a bandeira -p 8000:8000 do comando de instalação sem afetar a interface local. Os padrões vêm diretamente do documento oficial de instalação do Portainer para Linux.
Quanta RAM o Portainer precisa?
O Portainer por si só ocupa cerca de 100 MB antes de carregar qualquer coisa. Adicione alguns centenas de MB para o daemon do Docker e, em seguida, dimensione com base no que você está realmente executando.
Na DreamHost, dimensionamos nosso Self-Managed VPS de nível inicial com 4 GB de RAM exatamente para este tipo de carga de trabalho — espaço suficiente para o Portainer mais um pequeno conjunto de contêineres de projetos paralelos como Ghost, n8n, um banco de dados Postgres e um proxy reverso.
O Portainer é gratuito?
Sim. A Edição Comunitária do Portainer é totalmente gratuita, e a Edição Business também possui um nível gratuito perpétuo de 3 nós chamado Take 3, que se renova anualmente sem custo, desde que você mantenha três nós ou menos. Acima de três nós, o preço do Business começa em $99/mês no plano Starter por página de preços business do Portainer.
Qual é a diferença entre Portainer CE e Business Edition?
Portainer Edição Comunitária é grátis, open-source e totalmente equipada para uso pessoal.
Edição Empresarial adiciona controle de acesso baseado em funções, registros de auditoria, registro de atividades e suporte comercial, e começa em $99/mês para 5 nós após o nível gratuito perpétuo Take 3 de 3 nós.
O Portainer pode gerenciar múltiplos hosts Docker?
Sim, o Portainer pode gerenciar vários hosts Docker através de Edge Agents, que executam em cada host remoto e consultam o servidor central do Portainer na porta de interface, usando a porta 8000 para abrir um túnel seguro de volta para comandos de gerenciamento. Para auto-hospedeiros de VPS único, isso é exagero. Para quem gerencia três ou mais caixas que compartilham um plano de controle, é por isso que 8000 está na linha de instalação.
O Docker Ignora o UFW em um VPS?
Sim, o Docker ignora o UFW por padrão porque o Docker gerencia o tráfego dos contêineres na camada NAT do iptables, que está à frente das cadeias INPUT e OUTPUT do UFW.
De acordo com a documentação de filtragem de pacotes do Docker, “Os pacotes são desviados antes de alcançarem as cadeias INPUT e OUTPUT que o UFW utiliza.” A solução é a cadeia de iptables DOCKER-USER, e a ferramenta padrão da comunidade para integrar o UFW a ela é chaifeng/ufw-docker.

Assuma o controlo de toda a sua stack. Aplicações, IA, bases de dados e muito mais.
Mantenha todas as credenciais e conversas num servidor que controla, com velocidade NVMe e largura de banda ilimitada incluídas.
Explore os planos de hosting VPS