Cannot access selfhosted qdrant vector store

When I use HTTP-Requests, everything works fine, I can create collections, list the collections etc.
It seems that these Qdrant nodes in n8n are poorely coded.
The qdrant node in langflow for example exposes all the fields for the ports, and it works well.

n8n is assuming port 6333 when connecting to qdrant during workflow execution even if you give it another port in the url. This black box operation is particularly unhelpful if you’re hosting qdrant behind a reverse proxy with ssl termination.

The test and the workflow work differently, which add to the confusion.

I totally agree. The issue is with the n8n-qdrant-node. If I try a GET-request in n8n to my collection is works fine.

I have it working correctly.
I’ve added qdrant in my docker-compose file and then used the qdrant container ip.

If you’re using a url from coolify, have you tried specifying the port 80?

Yes, but this doesn’t work, I get a bad gateway error.

I had the same problem (configured reverse proxy nginx with ssl), after reading the previous messages, I did the following, in docker-compose.yml I specified:

ports:
- "127.0.0.1:6303:6333"
- "127.0.0.1:6304:6334"

and in the nginx settings:

> server {
>     server_name domain.com;
>     listen 443 ssl http2;
> 
>     ssl_certificate     /etc/letsencrypt/live/....fullchain.pem;
>     ssl_certificate_key /etc/letsencrypt/live/...../privkey.pem;
>     include /etc/letsencrypt/options-ssl-nginx.conf;
> 
>     location /dashboard/ {
> 
>         proxy_pass         http://127.0.0.1:6303/dashboard/;
>         proxy_http_version 1.1;
> 
>         proxy_set_header  Host $host;
>         proxy_set_header  X-Real-IP $remote_addr;
>         proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
>         proxy_set_header  X-Forwarded-Proto $scheme;
> 
>         proxy_hide_header X-Powered-By;
>         proxy_hide_header Server;
>     }
>     location / {
>         proxy_pass         http://127.0.0.1:6303/;
>         proxy_http_version 1.1;
> 		
>         proxy_set_header  Host $host;
>         proxy_set_header  X-Real-IP $remote_addr;
>         proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
>         proxy_set_header  X-Forwarded-Proto $scheme;
> 
>         proxy_hide_header X-Powered-By;
>         proxy_hide_header Server;
>     }
> }
> 
> server {
>     server_name domain.com;
>     listen 6333 ssl http2;
> 
> 
>     ssl_certificate     /etc/letsencrypt/live/.../fullchain.pem;
>     ssl_certificate_key /etc/letsencrypt/live/.../privkey.pem;
>     include /etc/letsencrypt/options-ssl-nginx.conf;
> 
>     location / {
>         proxy_pass         http://127.0.0.1:6303;
>         proxy_http_version 1.1;
> 
>         proxy_set_header  Host $host;
>         proxy_set_header  X-Real-IP $remote_addr;
>         proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
>         proxy_set_header  X-Forwarded-Proto $scheme;
> 
>         proxy_hide_header X-Powered-By;
>         proxy_hide_header Server;
>     }
> }
> 
> server {
>     server_name domain.com;
>     listen 6334 ssl http2;
> 
>     ssl_certificate     /etc/letsencrypt/live/.../fullchain.pem;
>     ssl_certificate_key /etc/letsencrypt/live/.../privkey.pem;
>     include /etc/letsencrypt/options-ssl-nginx.conf;
> 
>     location / {
>         grpc_pass grpc://127.0.0.1:6304;
> 
>     }
> }
> 
> server {
>     listen 80;
>     server_name domain.com;
>     return 301 https://$host$request_uri;
> }

A block with access to API on port 443 is needed so that the dashboard has access to collections.
After this setup, n8n has access to collections in Qdrant.

I ran into the same issue while running a self-hosted setup with Coolify, n8n, and Qdrant. After trying out a few different approaches, here’s what worked for me:

Step 1: Update your Qdrant Compose File in Coolify
In Coolify, open the Qdrant Docker Compose file and make sure to add the following lines to expose the necessary ports:

 ports:
  - 6333:6333
  - 6334:6334
expose:
  - 6333
  - 6334

Step 2: Restart the Qdrant container
Apply the changes by restarting the container.

Step 3: Configure the Qdrant Node in n8n
In the Qdrant node settings within n8n, set the server URL using your server’s IP address and the correct port:

http://YOUR_SERVER_IP:6333

That’s it! This configuration worked reliably for me. Hope it helps someone else out too.

I have exactly the same issue. On a coolify setup, with Cloudflare tunnels. I think port 6333 should be able to get overwritten?

How can I get this to work?

I just solved a problem with Coolify and Qdrant. I added two lines in the compose file:
ports:
- 6333:6333

and in the n8n connection settings, I wrote http://qdrant_url.com**:6333** instead of https://qdrant_url.com

Now everything works as expected


services:
  qdrant:
    image: 'qdrant/qdrant:latest'
    ports:
      - 6333:6333
    environment:
      - SERVICE_FQDN_QDRANT_6333
      - 'QDRANT__SERVICE__API_KEY=${SERVICE_PASSWORD_QDRANTAPIKEY}'
    volumes:
      - 'qdrant-storage:/qdrant/storage'
    healthcheck:
      test:
        - CMD-SHELL
        - "bash -c ':> /dev/tcp/127.0.0.1/6333' || exit 1"
      interval: 5s
      timeout: 5s
      retries: 3

That finally worked for me, too! Thanks.

New version n8n@1.89.0 got released which includes the GitHub PR 14328.

This is really weired. My coolify instance is now SSL tunneled through Cloudflare, I thought this might have been the issue. But If I try your suggestion here (with http and IP adress) it works.

I had the same problem with Easypanel installation. This thread helped me a lot. Thank you all

I solved going to Easy panel Qdrant application > Advanced > Ports secction
Then add port: TCP 6333 and 6333

And all working in n8n

I set up a local ai package from here https://github.com/coleam00/local-ai-packaged into Win10 Docker Desktop.

Inside it, both n8n and Qdrant instances are running in the same container, with ports 5678 and 6333, respectively.

Qdrant dashboard is accessible locally, everything seems fine. Even when I’m trying to provide Qdrant vector store node with the credentials, I’m seeing a green light that the address and credentials are correct.

I tried
http://localhost:6333
http://qdrant:6333
http://host.docker.internal:6333
even http://container_IP_address:6333,
but I continue receving “Connection tested successfully” in qdrant credential menu, but “Invalid Qdrant URL: undefined” when inserting data or retrieving collections list.

I also exposed 6334 port, which helped some people in this thread. And spun up a qdrant instance in a separate container.

Nothing helped so far, unfortunately.

Found the root cause - I installed the Qdrant Community Node. It apparently conflicted with Qdrant Vector Store node

They fixed it with v0.1.13 of the Qdrant Community Node.

  • Delete the Community Node
  • Clear the node list cache (restart n8n)
  • Install the newest version of the Qdrant Community Node (v0.1.13).

You have to make new Credentials for the Qdrant Community Nodes.