Hoy vamos con dos editores para tu Home Assistant Docker, Configurator, conocido como File Editor y Code Server, conocido como Visual Studio Code, realmente Visual Studio Code es el programa de escritorio.
Toda la configuración y explicaciones están en el video por lo que aquí solo pondré las instrucciones y webs de referencia.
Empezamos con File Editor
Para empezar crearemos un directorio para guardar el docker-compose.yml y la configuración
mkdir configurator
Entramos en el directorio y creamos el docker-compose.yml
cd configurator
nano docker-compose.yml
El contenido del docker-compose lo tenéis que adaptar a vuestra ruta de configuración de Home Assistant
version: '3'
services:
hass-configurator:
container_name: configurator
image: causticlab/hass-configurator-docker:latest
volumes:
- /ruta/al/directorio/de/configurator:/config
- /ruta/al/directorio/configuracion/homeassistant:/hass-config
restart: always
ports:
- "3218:3218/tcp"
Solo quedar guardar y lanzar el contenedor
docker-compose up -d
Para entrar en el editor ponemos la IP de nuestro servidor y el puerto 3218. http://ip_servidor:3218
Ahora solo queda integrar el editor dentro de Home Assistant, esto lo hacemos con un iframe, aprovechamos que tenemos el editor abierto y añadimos lo siguiente en el configuration.yaml. Hay que cambiar lo que pone IP_PC por vuestra IP.
panel_iframe:
configurator:
title: Configurator
icon: mdi:wrench
url: http://IP_PC:3218
Reiniciamos Home Assistant y ya tenemos todo listo y podemos acceder a Configurator desde dentro de HA.
Ahora toca Visual Studio Code
Para empezar como siempre creamos un directorio donde guardar el docker-compose y la configuración, seguidamente creamos el docker-compose.yml
mkdir vscode
cd vscode
nano docker-compose.yml
El docker-compose.yml se puede variar, os dejo la referencia por si queréis poner más opciones.
linuxserver/code-server – Docker Image | Docker Hub
El contenido que muestro en el video, recordar cambiar las rutas por las vuestras.
version: "2.1"
services:
code-server:
image: lscr.io/linuxserver/code-server
container_name: code-server
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Madrid
volumes:
- ./config:/config
- /home/pi/domotica/ha/config:/config/workspace
ports:
- 8443:8443
restart: unless-stopped
Guardamos y lanzamos el contenedor con
docker-compose up -d
Ahora nos vamos al navegador y ponemos la IP del servidor seguido del puerto 8443. http://IP_servidor:8443
Y ya tenemos Code Server que realmente es como se llama esta versión de Visual Studio Code, funcionando.
Aprovechamos que lo tenemos abierto para añadir VsCode a la barra de menú de Home Assistant
panel_iframe:
vscode:
title: "Visual Studio Code"
url: "http://192.168.68.125:8443"
icon: "mdi:microsoft-visual-studio-code"
Reiniciamos Home Assistant y ya tenemos la opción de entrar a Vscode desde dentro de HA.
Instalar extensiones en Visual Studio Code
Extensiones podemos instalar las que queramos y sean de utilidad , naturalmente la que no puede faltar es la de Home Assistant y que podrás instalar directamente desde Code Server, igualmente os dejo el enlace para ver que extensiones utiliza Home Assistant en el addon oficial de Visual Studio Code.
Aquí teneis las extensiones -> https://github.com/hassio-addons/addon-vscode/blob/main/vscode/vscode.extensions
A día de hoy son estas pero mejor consultar el enlace porque posiblemente vayan cambiando con el tiempo.
emilast.LogFileHighlighter#2.11.0
esbenp.prettier-vscode#9.2.0
ESPHome.esphome-vscode#0.22.0
keesschollaart.vscode-home-assistant#1.24.0
lukas-tr.materialdesignicons-intellisense#4.0.0
netcorext.uuid-generator#0.0.4
oderwat.indent-rainbow#8.2.2
redhat.vscode-yaml#1.2.0
usernamehw.errorlens#3.4.1
Como explico, algunas las podéis instalar fácilmente desde el mismo editor y otras se tendrán que descargar desde la web oficial , subirlas por ftp a nuestro servidor y después instalarla como detallo en el video.
En este momento solo hay 3 extensiones que no pueden instalarse desde el mismo programa.
ESPHome
materialdesignicons-intellisense
uuid-generator
Hasta aquí todo, para salir de dudas con todo el proceso mirar el video donde lo explico bastante mejor que aquí.
Hola,
Cuando intento editar cualquier archivo (por ejemplo configuration.yaml) desde Visual Studio Code, me dice que no tiene permisos suficientes para guardar, ¿Cómo puedo solucionar esto?, no lo encuentro.
Muchas gracias, Bruno
Hola Bruno, eso pasa seguramente porque los archivos del directorio que quieres editar tienen otro owner por ejemplo root y Visual Code corre con otro usuario que podría ser por ejemplo PI, la solución pasa por cambiar el dueño de esos archivos, siempre que no afecte a nada importante.
Hola, me hace toda la integracion bien del file editor, pero cuando pincho en el iframe del HA me salta el mensaje de :
Unable to load iframes that load websites over http:// if Home Assistant is served over https://.
tengo que crear un certificado para poder acceder por https?