Resposta Rápida
Para verificar se o Docker inicia automaticamente no Ubuntu Server, execute:
systemctl is-enabled docker
Se o resultado for enabled, o Docker já está configurado para iniciar durante o boot do sistema.
Além disso, verifique se seus containers possuem uma política de reinicialização configurada:
docker inspect -f '{{ .HostConfig.RestartPolicy.Name }}' nome_do_container
Na maioria dos ambientes de produção e homelab, a política recomendada é:
--restart=unless-stopped
Isso garante que os containers retornem automaticamente após reinicializações do servidor sem interferir em containers parados manualmente.
Principais Pontos
- Docker deve estar habilitado no systemd para iniciar no boot.
- Containers precisam de políticas de restart próprias.
unless-stoppedé a opção mais recomendada para a maioria dos cenários.- Testes reais após reboot são essenciais.
- Docker Compose também deve ser configurado corretamente para recuperação automática.
Visão Geral
Uma das causas mais comuns de indisponibilidade em servidores Linux ocorre após reinicializações inesperadas.
Muitos administradores acreditam que, ao instalar o Docker, todos os containers voltarão automaticamente após uma queda de energia ou reinício do sistema.
Na prática, existem duas camadas independentes:
- O serviço Docker precisa iniciar junto com o sistema operacional.
- Cada container precisa possuir uma política de reinicialização adequada.
Se apenas uma dessas etapas estiver configurada, aplicações podem permanecer offline após um reboot.

Como o Processo de Inicialização Funciona
Quando o Ubuntu Server inicia:
Ubuntu Boot
↓
systemd
↓
Docker Service
↓
Containers com Restart Policy
Se qualquer etapa falhar, os serviços hospedados nos containers não ficarão disponíveis.
Passo 1 – Verificar se o Serviço Docker Inicia no Boot
Confira o status atual:
systemctl status docker
Ou de forma mais objetiva:
systemctl is-enabled docker
Possíveis retornos:
| Resultado | Significado |
|---|---|
| enabled | Docker inicia automaticamente |
| disabled | Docker não inicia sozinho |
| static | Gerenciado por outro serviço |
| masked | Inicialização bloqueada |
Caso esteja desativado:
sudo systemctl enable docker
Inicie imediatamente:
sudo systemctl start docker
Verifique novamente:
systemctl is-enabled docker
Passo 2 – Verificar as Políticas de Reinicialização dos Containers
Liste todos os containers:
docker ps -a
Verifique um container específico:
docker inspect -f '{{ .HostConfig.RestartPolicy.Name }}' nome_do_container
Entendendo as Políticas de Restart
| Política | Reinicia após falha | Reinicia após reboot | Respeita parada manual |
|---|---|---|---|
| no | ❌ | ❌ | ✅ |
| on-failure | ✅ | Parcialmente | ✅ |
| always | ✅ | ✅ | ❌ |
| unless-stopped | ✅ | ✅ | ✅ |

Qual Política é Melhor em 2026?
Para a maioria dos ambientes:
Homelab
unless-stopped
Ideal para:
- Jellyfin
- Immich
- Nextcloud
- Pi-hole
- Syncthing
- Home Assistant
Produção
unless-stopped
ou
always
Dependendo da estratégia operacional adotada.
Passo 3 – Configurar Containers Existentes
Atualizar um container:
docker update --restart=unless-stopped meu_container
Verificar novamente:
docker inspect -f '{{ .HostConfig.RestartPolicy.Name }}' meu_container
Passo 4 – Configurar Durante a Criação
Ao criar novos containers:
docker run -d \
--restart=unless-stopped \
--name app \
imagem
Isso evita problemas futuros.
Docker Compose em 2026
Cada vez mais ambientes utilizam Docker Compose.
Exemplo:
services:
nginx:
image: nginx
restart: unless-stopped
Após alterações:
docker compose up -d

Como Validar Isso na Prática
Uma configuração aparentemente correta pode falhar em cenários reais.
Execute este procedimento:
1. Confirme as políticas
docker ps -a
2. Reinicie o servidor
sudo reboot
3. Após o boot
docker ps
Todos os containers esperados devem estar em execução.
Script de Auditoria Automática
#!/bin/bash
echo "===== Docker Service ====="
systemctl is-enabled docker
echo ""
echo "===== Containers ====="
for c in $(docker ps -aq); do
NAME=$(docker inspect -f '{{ .Name }}' $c | sed 's/\///')
POLICY=$(docker inspect -f '{{ .HostConfig.RestartPolicy.Name }}' $c)
echo "$NAME -> $POLICY"
done
Salve como:
check-docker-boot.sh
Permissões:
chmod +x check-docker-boot.sh
Execute:
./check-docker-boot.sh
Benchmarks e Impacto Operacional
Em servidores domésticos e VPS pequenos, o impacto do restart automático é praticamente irrelevante.
| Ambiente | Consumo adicional |
|---|---|
| Raspberry Pi 4 | Menos de 1% CPU |
| Orange Pi Zero 3 | Menos de 1% CPU |
| VPS 1 vCPU | Desprezível |
| Servidor Ryzen | Desprezível |
O maior benefício não é desempenho.
É disponibilidade.
Benefícios
Maior Disponibilidade
Aplicações retornam automaticamente após reboot.
Menor Intervenção Manual
Reduz necessidade de acesso SSH para recuperação.
Recuperação Mais Rápida
Falhas inesperadas são tratadas automaticamente.
Melhor Experiência para Usuários
Menos indisponibilidade de serviços.
Limitações
Pode Reiniciar Aplicações com Erro
Containers mal configurados podem entrar em loop.
Não Substitui Monitoramento
Ferramentas como:
- Prometheus
- Grafana
- Uptime Kuma
continuam importantes.
Dependência da Aplicação
Alguns serviços precisam aguardar banco de dados ou outros containers.
Comparações Relevantes
| Método | Facilidade | Recuperação Automática |
|---|---|---|
| Docker Restart Policy | Alta | Sim |
| Script Manual | Média | Parcial |
| Cron @reboot | Média | Parcial |
| Kubernetes | Alta | Sim |
| Docker Swarm | Alta | Sim |
Para a maioria dos usuários domésticos e pequenas VPS, as Restart Policies continuam sendo a solução mais simples e eficiente.
Vale a Pena Configurar?
Sim.
Independentemente de você utilizar:
- Homelab
- VPS
- Servidores dedicados
- Aplicações corporativas
Configurar o Docker e seus containers para reiniciar automaticamente é uma das medidas mais simples para aumentar a disponibilidade dos serviços.
Quem Deve Usar?
✅ Administradores Linux
✅ Usuários de Homelab
✅ Desenvolvedores
✅ Hospedagem de aplicações web
✅ Serviços self-hosted
Quem Pode Não Precisar?
❌ Containers temporários de testes
❌ Ambientes descartáveis de desenvolvimento
❌ Laboratórios de experimentação rápida

FAQ
O Docker inicia automaticamente no Ubuntu?
Sim, desde que esteja habilitado:sudo systemctl enable docker
O serviço Docker e os containers são a mesma coisa?
Não.
O Docker pode iniciar normalmente enquanto os containers permanecem parados.
Qual restart policy devo usar?
Na maioria dos casos:unless-stopped
Docker Compose suporta restart?
Sim.
Exemplo:restart: unless-stopped
Preciso reiniciar o servidor para testar?
Sim.
É a única forma de validar completamente o comportamento após boot.
Conclusão
Garantir que o Docker e seus containers iniciem automaticamente é uma prática básica, mas frequentemente negligenciada. Em 2026, com o crescimento de ambientes self-hosted, homelabs e aplicações distribuídas, configurar corretamente o systemd e as políticas de reinicialização dos containers tornou-se essencial para reduzir downtime e aumentar a confiabilidade dos serviços.
A combinação de:
- Docker habilitado no systemd
- Restart Policy adequada
- Testes reais após reboot
- Auditorias periódicas
é suficiente para evitar grande parte dos problemas de indisponibilidade observados em servidores Linux modernos.
🚀 Quer aprender mais sobre Docker, Homelab, Orange Pi, VPS e automação de servidores Linux?
Explore nossos tutoriais completos e descubra como construir uma infraestrutura robusta, segura e totalmente automatizada utilizando Docker, containers e ferramentas open source.
Quer dominar o Docker em ambientes de laboratório doméstico?



