Just sharing the third party addon I integrated to hassio for my personnal use. But maybe it could be helpful for you.
If you want to know more about n8n you can check it there : https://n8n.io/
It’s a tool between Zapier and Nodered. It’s open source, pretty beautiful and useful.
You can add my addons repository in your installation to use it.
I’ve created a Github action workflow that will check once a week if a new n8n version is available.
If so, it will automatically create a pull request to my repository with the version bump.
From now, I will follow n8n version from weeks to weeks in that addon
Are you open for PRs? I have some ideas I am planning to test, such as syncing HA external url and n8n webhook urls etc. As for now, n8n defaults to container IP if I recall correctly.
I have been using cloudflared add-on to expose addons other services externally, n8n worked out of the box, but webhook urls were off. Minor thing as you can manually update them, but nice convenience factor for better UX
I’am always open for contributions, feel free to fork the repository, do your tests on your own and make a PR back in the “official” repo. (Please with details and explanations, I quite lack time recently )
Nice idea for cloudflared, I’ll take a look thanks !
You’re my hero! I wanted to host my own n8n on HAOS and I’m not a dev myself to know how to set up my own Docker container. This made my day. Installing now.
Can someone help to set it up? I can get it working locally, but as soon as I change to https it crashes.
I use DuckDNS + NGINX SSL Proxy to access remotely and works fine for my HA, so I believe I should change to https, the URL to my domain:5678, and I also opened my 5678 port on my router. But it still crashes and can’t start it properly.
Tbh, even sticking with my domain as webhook URL it still works. Not sure what that does, I have just randomly tried different configs trying to find what was the issue, but no luck.
Also, I created a port forwarding TCP 5678 in my router. Tried with and without, since I’m not sure if it’s needed. But it didn’t make a difference.
Actually, if you’re using a reverse proxy (nginx SSL in that case), you should not use yourdomain:5678 but something like registering a subdomain like n8n.yourdomain and proxying it to hassioIp:5678. And doing that you don’t really need to enable https on n8s side, your nginx will secure the endpoint
It worked!!
I struggled like an entire day since I’m not familiar (I honestly don’t know what I’m doing) with proxies and all this. HA nginx addon doesn’t allow you to add multiple domains, so I had to search for an alternative. I found there is indeed a NGINX Proxy Manager which is exactly for this.
Actually it simplifies A LOT the set up for DuckDNS + NGINX Proxy SSL. I replaced both for this new addon. I couldn’t just use n8n.mydomain.duckns.com as I had issues with the certificate being created, so I just created a new DuckDNS subdomain for it, and pointed it to 5678 as you mentioned. After a lot of back and forth I managed, and now I finally am ready to play with my own instance of n8n.
Thanks for pointing that out. There is an automatic update, but n8n official website where I scrapped the latest version available changed URL, so the automatic update was broken. Following your message, I’ve updated the Github action that update the whole thing and in the following days, I’ll implement a check to avoid such silent failures in the future.
Any chance you could guide about how to find out the path to HA files from within n8n?
For example, I’m trying to use an n8n node to read a binary file, in this case some images from the /media/ folder. But “/media/Nikon/*.jpg” doesn’t work.
Is some env variable needed in the config? Do you know which one and how to define it? I’m not so familiar with this.
Many thanks for this and once again for this amazing add-on.
When developing hassio addons, you set in the configuration what host hassio folder to map, as per the documentation the available mappings are :
List of Home Assistant directories to bind mount into your container. Possible values: config, ssl, addons, backup, share or media. Defaults to ro, which you can change by adding :rw to the end of the name.
From experience, I was setting everything to follow the least privileges pattern. Like only give what is needed, not more, to avoid setting too wide permissions.
From the community needs, I’ve added more and more mappings, so I believe it’s right to bind at least the backup, share, media as read write
Amazing. Thank you for the update. Will test it when I get the update.
Btw, did you notice there’s a major update in n8n? There’s some breaking changes AFAIK. Not sure if you’re auto-update will stop to include it or if there’s something we should do to adapt to it.
I’d love to help, really, but I’m not the right person. I’d love nothing more than being able to contribute and speed up the process.
I barely get around n8n and HA myself, and especially their setups. I’m no dev. I would not know where to start to use the branch from github instead of the master, how to install that in HA as a diff instance of the current one…
After all that is sorted then I’d be fully happy to test all my workflows extensively making sure everything works, but that’s as end user.
I’ve tried reading the migration guide and the major things I picked up are
The changes to the WEBHOOK_TUNNEL_URL, but from my understanding it’s a matter of a name change.
Deprecation of MySQL and MariaDB. But no clue how this affects. For instance I use MariaDB as db in my HA. Not sure if that means I’ll need to switch or it’s unrelated in this case.
If I can help in anything at a adv user level, please let me know and I’ll do my best to help.