搭建个人的匿名搜索引擎——SearXNG

1.前言

这是一个基于 Python 的完全开源免费搜索引擎平台,为你提供来自 Google、Bing、Yahoo 等 70 多种各大视频、图片、搜索、磁力等网站结果展示,并对搜索结果进行优化,同时不会存储你的任何搜索信息,搭建也十分方便。

注意,不能访问外网的话使用起来会受很多限制,所以不建议采用大陆服务器。

2.项目介绍2.1项目地址

项目GitHub:searxng/searxng(github.com)

项目docker:searxng/searxng-docker(github.com)

2.2项目特色

尊重隐私、可定制的元搜索引擎。

桌面、平板和手机上自适应显示

支持暗夜模式(你可以在首选项中选择)

支持从右到左的语言

查看屏幕截图

支持Docker部署,还可以为ARM64和ARM/v7架构构建镜像(树莓派也能安装)

3.项目部署3.1系统环境

这系统采用Ubuntu20.04/22.04均可,Debian和CentOS系统的小伙伴可以自行调整部署指令。

3.2安装docker

使用Ubuntu可以很便捷的安装docker以及docker-compose:

snap install docker3.3部署SearXNG

创建安装目录:

mkdir -p /root/data/docker_data/searxngcd /root/data/docker_data/searxnggit clone https://github.com/searxng/searxng-docker.gitcd searxng-dockervi docker-compose.yaml

因为官方默认是试用caddy来反代的,有一个问题就是可能会和你网站上的80端口冲突,导致searXNG与你服务器上的其他网站无法共存,我们这边把caddy部分注释掉,改为采用NginxProxyManager进行反向代理。

切换到英文输入法,按下i做如下修改。

services:# 我们注释掉caddy的内容 # caddy: # container_name: caddy # image: caddy:2-alpine # network_mode: host # volumes: # - ./Caddyfile:/etc/caddy/Caddyfile:ro # - caddy-data:/data:rw # - caddy-config:/config:rw # environment: # - SEARXNG_HOSTNAME=${SEARXNG_HOSTNAME:-http://localhost:80} # - SEARXNG_TLS=${LETSENCRYPT_EMAIL:-internal} # cap_drop: # - ALL # cap_add: # - NET_BIND_SERVICE # - DAC_OVERRIDE…… volumes:# 我们注释掉caddy的内容 #caddy-data: #caddy-config:

输入完成之后,切换到英文输入法,按下:wq保存退出。接着我们来编辑一下.env文件。

cd /root/data/docker_data/searxng/searxng-dockervi .env

切换到英文输入法,按下i输入内容。

SEARXNG_HOSTNAME=你的域名!!!

只修改这一行,别的行都不用管!注意把前面的#号去掉!第二行的邮件不用管,那个是caddy申请的一个邮件,我们不用caddy。输入完成之后,切换到英文输入法,按下:wq保存退出。

cd /root/data/docker_data/searxng/searxng-dockersed -i 's|ultrasecretkey|$(openssl rand -hex 32)|g' searxng/settings.yml # 生成一个密钥

最后运行:

cd /root/data/docker_data/searxng/searxng-dockerdocker-compose up -d

完成后便可以通过ip:8180进行访问。

4.更新与卸载4.1更新
cp -r /root/data/docker_data/searxng/searxng-docker /root/data/docker_data/searxng/searxng-docker.archive  # 万事先备份,以防万一cd /root/data/docker_data/searxng/searxng-docker  # 进入docker-compose所在的文件夹docker-compose pull    # 拉取最新的镜像docker-compose up -d   # 重新更新当前镜像
4.2卸载cd /root/data/docker_data/searxng/searxng-docker # 进入docker-compose所在的文件夹docker-compose down # 停止容器,此时不会删除映射到本地的数据rm -rf /root/data/docker_data/searxng/searxng-docker # 完全删除映射到本地的数据 本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。