Configuraremos el stack de Docker de Home Assistant y levantaremos el stack a través de Portainer. El stack consiste del siguiente contenedor:
- Home Assistant: Motor de automatización del hogar.
- Ejecutar:
./scripts/create_home_assistant_folder.sh
para generar el directorio del contenedor en el SSD. - Editar el archivo del stack:
nano ./files/home-assistant-stack.yml
. - Reemplazar
TZ=America/New_York
por el huso horario de su sistema. Puede usar esta lista como referencia: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones. - Si no se va a exponer el servidor al internet, quitar la red de
nginx
. - Ajustar el atributo
ipv4_address
en el contenedorhomeassistant
con un IP en el rango no asignable por el DHCP. Por ejemplo 192.168.1.11. - Copiar todo el contenido del archivo al portapapeles. Guardar y salir con
Ctrl + X, Y, Enter
. - Agregar stack en Portainer desde el navegador.
- Acceder a Portainer a través de https://192.168.1.253:9443. Si sale una alerta de seguridad, puede aceptar el riesgo ya que Portainer usa un certificado de SSL autofirmado.
- Darle clic en "Get Started" y luego seleccionar "local".
- Seleccionar "Stacks" y crear un nuevo stack.
- Ponerle nombre "home-assistant" y pegar el contenido del home-assistant-stack.yml que copió al portapapeles y crear el stack. Desde ahora modificaciones al stack se deben de hacer a través de Portainer y no en el archivo.
- Acceder a Home Assistant a través de http://192.168.1.11:8123.
- Usar el asistente para crear una cuenta de usuario y contraseña. Se recomienda nuevamente el uso de Bitwarden para lo mismo.
- Configurar con el asistente nombre de la instancia de Home Assistant y sus datos y preferencias.
- Escoja si quiere mandar datos de uso a la pagina de Home Assistant.
- Finalizar el asistente.
- Configurar Webhook para notificaciones.
- Navegar a "Settings" > "Automations & Scenes".
- Hacer clic en "Create Automation".
- Hacer clic en "Create new Automation".
- Hacer clic en "Add Trigger".
- Buscar "Webhook" y seleccionar.
- Nombrar el trigger "A Problem is reported".
- Cambiar el id del webhook a "notify".
- Hacer clic en el engrane de configuración y habilitar unicamente "POST" y "Only accessible from the local network".
- Hacer clic en "Add Action".
- Buscar "send persistent notification" y seleccionar.
- Hacer clic en el Menú de la acción y seleccionar "Edit in YAML" y agregar lo siguiente:
alias: Notify Web service: notify.persistent_notification metadata: {} data: title: Issue found in server! message: "Issue in server: {{trigger.json.problem}}"
- Si desea recibir notificaciones en su celular, primero deberá descargar la aplicación a su celular e iniciar sesión en Home Assistant desde él. Después configurar lo siguiente:
- Hacer clic en "Add Action".
- Buscar "mobile" y seleccionar "Send notification via mobile_app".
- Hacer clic en el Menú de la acción y seleccionar "Edit in YAML" y agregar lo siguiente:
alias: Notify Mobile service: notify.mobile_app_{mobile_name} metadata: {} data: title: Issue found in server! message: "Issue in server: {{trigger.json.problem}}"
- Guardar.