Olá Pessoal,
Desde que mudei para o Servidor Ubuntu + Docker, notei que as vezes a página de acesso do Home Assistant caia, entretanto o servidor estava online. Eu ainda não sei o motivo do problema, mas como alternativa, eu acabei de fazer um shell script para verificar se a página do Home Assistant está com acesso, caso não esteja ele reinicia. Instalei este script no próprio servidor que está o Home Assistant.
Eu aprendi a fazer usando este tutorial: https://www.alura.com.br/artigos/automatizando-tarefas-com-shell-script (Tem explicações mais detalhadas, eu vou resumir aqui apenas com os códigos).
Primeiro, criar um arquivo .sh na pasta /bin (digitar no terminal):
#sudo nano /bin/ha.sh
Irá pedir a senha do root
Assim que abrir o editor, colar o código:
#!/bin/bash
codigo_http=$(curl --write-out %{http_code} --silent --output /dev/null IP_DO_SEU_HA:8123 --max-time 10)
if [ $codigo_http -ne 200 ]; then
echo "Houve um problema com o servidor Home Assistant, tentando reiniciá-lo $(date +%F\ %T)" >> /home/server/logs/servidor.log
docker restart homeassistant
fi
(Após incluir o código, digite Ctrl+S para salvar e Ctrl+X para sair do nano)
Agora tem que alterar a permissão do arquivo ha.sh criado:
sudo chmod 777 /bin/ha.sh
Criar um arquivo de log (/home/server/logs/servidor.log), para quando tiver problema no site, ele vai gravar o dia e hora de quando foi reiniciado. No meu caso criei a pasta e o arquivo de log:
cd /home/server
mkdir logs
sudo nano servidor.log
(digita Ctrl+S e Ctrl+X)
Seu script já está criado, para rodar ele:
bash /bin/ha.sh
No caso ele nao ira fazer nada se o serviço estiver online (significa que retorna 200), se estiver diferente de 200 ele reinicia o home assistant.
, agora para agendar e fazer ele rodar automaticamente, vamos usar o CRON, digita:
crontab -e
Como nunca tinha aberto apareceu qual editor gostaria de usar, eu usei o nano (1)
Assim que abrir o editor eu fui até a ultima linha e adicione:
*/1 * * * * bash /bin/ha.sh
Esta linha significa que vai rodar o script a cada 1 minuto.
Bom, eu acabei de fazer e não sei se funciona ainda hehehe … acho que vai quebrar um galho até encontrar o problema, não deixando o home assistant offline, espero que ajude quem tiver com problema do ha ficar caindo!
Valeu!