自建Open WebUI调用searxng

同一台VPS自建open webui和searxng。在管理员配置界面searxng地址是不是不能填写127.0.0.1:port。怎么调用本机的搜索服务?

9 个赞

内网ip加port

docker的话 同一个网段下直接内网IP+端口

报错的话 看下是不是searxng的配置文件没改 默认是html 要加上json
接口调用地址
http://xx:xx/search?q=

2 个赞

我是远程vps,设置ip就要绕防火墙了。不支持同一台vps通过127.0.0.1访问?

你是说vps的内网IP?我还从来没这么用过。我的防火墙是最小授权的,都没配置过内网IP策略。应该访问不了。

我记得我试过好像不行 问了下gpt

1 个赞


image
image
我是这样弄的,希望能帮到你

谢谢。我用docker compose的,我理解就是在同一网络种。但是你提醒了我docker环境下这里输入的127.0.0.1是被认为是宿主机的还是docker网络的。我得理一下。

1 个赞

可以把searxng的网络加入到openwebui,这样直接http://searxng:8080就行了,延迟可以忽略不计。前几天问gpt的解释贴在下面

抱歉,我重新阅读了规则,下次会注意的




2 个赞

我试了你的方式。有进步,但是报错。
HTTPConnectionPool(host=‘searxng’, port=8080): Max retries exceeded with url: /?q=%E7%BE%8E%E8%81%94%E5%82%A82024%E5%B9%B4%E6%9C%80%E6%96%B0%E5%8A%A8%E5%90%91&format=json&pageno=1&safesearch=1&language=en-US&time_range=&categories=&theme=simple&image_proxy=0 (Caused by NameResolutionError(“<urllib3.connection.HTTPConnection object at 0xeb2dac5f85d0>: Failed to resolve ‘searxng’ ([Errno -3] Temporary failure in name resolution)”))

这说明没连上

我的IP段都是172.20的,需要在同一个网络里

1 个赞

我是compose部署的,是同一个docker网络:perplexica-network。

searxng和openwebui在同一个compose里吗

贴下我的配置,把searxng-docker_searxng改成你的pplx网络应该就行了

version: "3.3"
services:
  open-webui:
    ports:
      - 127.0.0.1:23000:8080
    volumes:
      - /root/data/open-webui:/app/backend/data
    container_name: open-webui
    image: ghcr.io/open-webui/open-webui:main
    networks:
      - mynetwork
      - searxng-docker_searxng
    restart: always
  new-api:
    container_name: new-api
    restart: always
    ports:
      - 127.0.0.1:23001:3000
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - /data/new-api:/data
    image: calciumion/new-api:latest
    networks:
      - mynetwork
networks:
  mynetwork:
    driver: bridge
  searxng-docker_searxng:
    external: true
volumes:
  open-webui: {}

还不是。我弄混了。记成Perplexica的部署了。Open WebUI和searxng我是建了两个项目。看来是这个问题了。我考虑合并一下。

你看下我前面gpt的解答,两种方案
1.直接合在一个compose里最方便
2.外部网络,我上面贴给你的compose可以参考下

1 个赞

谢谢。我重新规划一下。

#快问快答添加