Bom dia a Todos,
Quero descrever que o meu home assistant está funcionando muito bem em um Orange PI 4 Pro com 4 GB e com um MicroSD 32 Gb que em breve vou migrar para um M.2 NVME PCIe 3.0 256G M.2 2280
E o Bacana que qualquer problema ou dúvida eu utilizei o Gemini para orientar tanto no linux quando no home assistant e portainer, mais funciona muito bem e rápido.
[Tutorial] Instalando Home Assistant Container + Portainer e Ecossistema (Mosquitto, Node-RED, Uptime-Kuma, Watchtower e AdGuard Home) no Orange Pi 4 Pro (4GB)
Fala, galera do fórum Home Assistant Brasil! ![]()
Se você comprou um Orange Pi 4 Pro de 4GB e quer uma infraestrutura robusta, leve e com total controle dos seus containers via interface web, o modelo de instalação isolada usando Docker, Portainer e Docker Compose é uma das melhores escolhas.
Neste tutorial passo a passo, vamos cobrir desde a preparação do sistema até o deploy automatizado do Home Assistant Container junto com os principais containers de suporte para a sua automação residencial.
Pré-requisitos
- Hardware: Orange Pi 4 Pro (4GB RAM) com cartão SD ou eMMC de boa qualidade.
- Sistema Operacional: Armbian, Debian ou Ubuntu Server homologado para Orange Pi, já instalado e com acesso SSH liberado.
- IP Estático: Certifique-se de fixar o endereço IP do seu Orange Pi nas configurações do seu roteador.
Passo 1: Atualização do Sistema e Instalação do Docker
Acesse o terminal do seu Orange Pi via SSH e execute a atualização dos pacotes para garantir que nenhuma dependência antiga quebre o processo:
bash
sudo apt update && sudo apt upgrade -y
Agora, instale o Docker usando o script oficial automatizado (método mais limpo e seguro):
bash
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
Adicione o seu usuário atual (substitua ortiz pelo seu usuário caso não esteja logado como root) ao grupo do Docker para não precisar usar sudo em todos os comandos:
bash
sudo usermod -aG docker $USER
Nota: Desconecte e conecte novamente no SSH para que a alteração de grupo tenha efeito.
Passo 2: Instalação do Portainer EE/CE
O Portainer será o nosso painel de controle visual para gerenciar todos os containers de forma simples.
-
Crie o volume persistente para o Portainer:
bash
docker volume create portainer_data -
Execute o comando de deploy do Portainer Community Edition (CE):
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:latest -
Acesse o painel pelo seu navegador:
https://IP_DO_ORANGE_PI:9443(ignore o aviso de certificado SSL autossinado) e crie a sua senha de administrador.
Passo 3: Preparação das Pastas de Persistência
Para garantir que suas automações, logs e dados não sumam ao atualizar os containers, vamos padronizar o diretório de dados na home do usuário:
bash
mkdir -p ~/docker/homeassistant
mkdir -p ~/docker/mosquitto/config ~/docker/mosquitto/data ~/docker/mosquitto/log
mkdir -p ~/docker/nodered
mkdir -p ~/docker/uptime-kuma
mkdir -p ~/docker/adguard/work ~/docker/adguard/conf
### Ajuste crucial para o Mosquitto (MQTT)
O container do Eclipse Mosquitto exige um arquivo mínimo de configuração para permitir conexões externas. Crie o arquivo executando:
bash
nano ~/docker/mosquitto/config/mosquitto.conf
Cole o conteúdo abaixo dentro dele, salve (`Ctrl+O`, `Enter`) e feche (`Ctrl+X`):
```ini
listener 1883
allow_anonymous true
persistence true
persistence_location /mosquitto/data/
log_dest file /mosquitto/log/mosquitto.log
Passo 4: Deploy Unificado via Portainer (A Stack)
Agora vem a mágica do Docker Compose.
- Acesse a interface do seu Portainer.
- Vá em Local > Stacks > Add stack.
- Dê um nome para a stack (ex:
automacao-residencial). - No editor web, cole o código do Docker Compose unificado abaixo. Ele já inclui o Home Assistant Container e todas as demais ferramentas solicitadas:
yaml
version: ‘3.8’
services:
— HOME ASSISTANT CONTAINER —
homeassistant:
container_name: homeassistant
image: “Package home-assistant · GitHub”
volumes:
- ~/docker/homeassistant:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
privileged: true
network_mode: host
— ECLIPSE MOSQUITTO (BROKER MQTT) —
mosquitto:
container_name: mosquitto
image: eclipse-mosquitto:latest
restart: unless-stopped
ports:
- “1883:1883”
- “9001:9001”
volumes:
- ~/docker/mosquitto/config:/mosquitto/config
- ~/docker/mosquitto/data:/mosquitto/data
- ~/docker/mosquitto/log:/mosquitto/log
environment:
- TZ=America/Sao_Paulo
— NODE-RED —
nodered:
container_name: nodered
image: nodered/node-red:latest
restart: unless-stopped
ports:
- “1880:1880”
volumes:
- ~/docker/nodered:/data
environment:
- TZ=America/Sao_Paulo
— UPTIME KUMA (MONITORAMENTO) —
uptime-kuma:
container_name: uptime-kuma
image: louislam/uptime-kuma:1
restart: unless-stopped
ports:
- “3001:3001”
volumes:
- ~/docker/uptime-kuma:/app/data
environment:
- TZ=America/Sao_Paulo
— ADGUARD HOME (DNS & BLOQUEADOR DE ANÚNCIOS) —
adguardhome:
container_name: adguardhome
image: adguard/adguardhome:latest
restart: unless-stopped
# Portas para DNS, Painel Web e DHCP se necessário
ports:
- “53:53/tcp”
- “53:53/udp”
- “784:784/udp”
- “853:853/tcp”
- “3000:3000/tcp”
- “8081:80/tcp”
- “443:443/tcp”
volumes:
- ~/docker/adguard/work:/opt/adguardhome/work
- ~/docker/adguard/conf:/opt/adguardhome/conf
environment:
- TZ=America/Sao_Paulo
— WATCHTOWER (ATUALIZADOR AUTOMÁTICO DE CONTAINERS) —
watchtower:
container_name: watchtower
image: containrrr/watchtower
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- TZ=America/Sao_Paulo
- WATCHTOWER_CLEANUP=true
- WATCHTOWER_POLL_INTERVAL=86400 # Verifica atualizações a cada 24 horas
5. Clique em **Deploy the stack** na parte inferior da tela e aguarde o download de todas as imagens.
---
## 🌐 Passo 5: Painel de Controle e Portas de Acesso
Após o término da instalação, você poderá gerenciar cada uma das suas novas ferramentas através das seguintes portas do seu navegador:
| Serviço | Porta Padrão | Link de Exemplo |
| :--- | :--- | :--- |
| **Home Assistant** | `8123` | `http://IP_DO_ORANGE_PI:8123` |
| **Portainer** | `9443` | `https://IP_DO_ORANGE_PI:9443` |
| **Node-RED** | `1880` | `http://IP_DO_ORANGE_PI:1880` |
| **Uptime Kuma** | `3001` | `http://IP_DO_ORANGE_PI:3001` |
| **AdGuard Home (Setup)** | `3000` | `http://IP_DO_ORANGE_PI:3000` |
---
### 💡 Dicas extras para a comunidade do Fórum:
1. **Rede Host no Home Assistant:** Perceba que o container do Home Assistant está configurado com `network_mode: host`. Isso é fundamental para que ele consiga descobrir automaticamente dispositivos inteligentes na sua rede (como lâmpadas Yeelight, TVs, Google Home) e mapear dongles Zigbee (ex: Sonoff ZBDongle-E).
2. **Watchtower Inteligente:** O Watchtower vai garantir que seu Home Assistant e complementos estejam sempre na última versão estável de forma invisível. O parâmetro `WATCHTOWER_CLEANUP=true` apaga as imagens antigas, poupando espaço de armazenamento do Orange Pi.
3. **Gerenciamento de Recursos:** O hardware do Orange Pi 4 Pro com 4GB de RAM vai rodar esse ecossistema com folga total, sobrando bastante memória para integrações pesadas e bancos de dados complexos.
Curtiu o guia? Se tiver qualquer dúvida sobre mapeamento de portas ou erros no log do MQTT, deixa o seu comentário aqui embaixo! 👇


