I have only 1 Ubuntu VPS and using Docker / Docker-compose / Traefik 2 to install and run multiple web apps. Such apps like Ghost / Wordpress are running as normal, but I can’t use n8n. After installing and doing some config with docker-compose.yml, the UI shows up but it can’t run any function.
Please take a look at my docker-compose.yml as below. Please help me with this. I don’t know what’s wrong with the config.
Hi @miniduke, I’m sorry to hear you’re running into this behavior. Could elaborate a bit on the error you are facing? When saying the UI shows up that means you can open your n8n domain, log in with your basic auth credentials and see the n8n canvas? What exactly would “it can’t run any function” mean, is this a problem specific to the Function node?
Yes I can still login with basic auth credentials and see the n8n canvas. I use the Telegram trigger node to test if it can retrieve the message, but after a long wait, nothing happens. I tried several times and the result is still the same.
One more thing is that the SSL doesn’t seem to work. Please see the photo below:
With n8n working in principle but also seeing your SSL/TLS certificate, I suspect something isn’t quite working as expected with your Traefik configuration. A problem with your proxy in front of n8n would also explain why Telegram might not be able to send webhooks to n8n.
I am not familiar with Traefik, but in a first step you might want to double check your Traefik configuration for any pointers (it seems you are doing this through your traefik.yml and configurations files) here. Does your configuration match the suggested configuration? Has a certificate been generated for your n8n subdomain by Traefik?
Thanks @luizeof for your answer. It did help me a lot in further investigate the problem. However, this will require to run Docker in swarm mode right? I’m not quite familiar with this.
And furthermore, I follow your config but it shows this notice
network "network_swarm_public" is declared as external, but it is not in the right scope: "local" instead of "swarm"
Would you mind sharing your configuration for this? Thank you so much!
Hi @mooghermez . Unfortunately, I have to use Wordpress on another host. However, I think the issue is that I was not familiar with how Traefik works, so it might limit the ability to use other web apps on the same host. I think you should dig into Traefik and work it out. Or try using the WP docker image and directing it to another port in the docker-image file.
Does anyone have a working setup with Traefik-2.x and latest n8n in docker?
Hesitating to hijack this thread, on the other hand that’s a good way to contact the few users who already tried to set that up, right?
In my case I try to set up a local instance on my desktop machine. Using test certs generated by mkcert for a $DOMAIN=docker.localhost. So the parts with the ACME resolvers are different. Things work for stuff like traefik.docker.localhost and portainer.docker.localhost.
Let me know if should keep posting here or start a new issue. I will happily share my configs then.
It is probably best to make a new thread although this does appear to be a Traefik configuration issue and not really related to n8n so our support on that is going to be a bit limited.
As a starting point though it looks like what you would need to do is make a config file for Traefik and set your certs in there (Traefik TLS Documentation - Traefik), I think you can then drop the cert resolvers from the config and all would be good.