前言

你是否每天面对着上万广告而不能正确找到答案的搜索引擎?那可以试着去搭建一个自己的搜索引擎。这也是《有趣的docker》的第一篇,后面会更新更多篇,你可以通过下方的RSS按钮来订阅本站点,也可以加入讨论群来进行讨论。群号:345826851

搭建环境

  • 服务器:用的是阿里云的香港机,你也可以去买国外的特价机,优先选非中国大陆机,配置是2H2G,(理论上1H1G也可以搭建)
  • 系统是Centos,教程用的都是Centos,你也不用特地重装到Centos,我只是习惯使用Centos而已。
  • Docker环境(没Docker你怎么有趣)
  • docker-compose

搭建教程

Docker

可以使用 Docker 一键安装命令安装,应该不会出什么差错。(在我这里不会)

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

也可以使用国内 daocloud 一键安装命令

curl -sSL https://get.daocloud.io/docker | sh
docker -v  #查看Docker版本

systemctl enable docker  #设置开机启动

安装docker-compose

curl -L https://get.daocloud.io/docker/compose/releases/download/v2.1.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose

docker-compose --version  #查看docker-compose版本

安装 searxng

先帮配置文件安排个家(安排一个路径)

cd /usr/local

然后 git clone

git clone https://github.com/searxng/searxng-docker.git

反向代理

因为默认使用的是Caddy反代。如果你的服务器同时使用 如果你的服务器同时使用 Nginx 运行别的网站的话就会导致你无法运行 SearXNG,你也可以放弃 Nginx 。

修改 env 配置文件

nano .env   #将注释删除,修改host为你的域名,修改email为你的邮箱。

修改完成后按 Ctrl + X 退出,按 Y 保存修改,回车确定。

生成密钥,直接执行命令

sed -i "s|ultrasecretkey|$(openssl rand -hex 32)|g" searxng/settings.yml

下面步骤我会使用到宝塔面板,如果不会安装宝塔面板,请到宝塔的官网来使用安装命令安装宝塔面板。

首先找到配置文件的家
将 docker-compose.yaml 中关于 Caddy 的部分删除
image-1659693046307
有需要修改端口的在这里修改
image-1659693106144
然后用宝塔添加反代配置,目标URL为 http://127.0.0.1:8080 ,如果上面修改了端口则将 8080 替换为修改的端口,提交
image-1659693720525
点击反向代理的配置文件
image-1659693835181
把里面的内容全删了,改成下面这些代码

location / {
    proxy_pass http://127.0.0.1:8080;
    proxy_set_header Host $host;
    proxy_set_header Connection       $http_connection;
    proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
    proxy_set_header X-Scheme         $scheme;
    proxy_buffering                   off;
}

注意上面的8080改成你设置的端口,然后保存。

Nginx反代成功。

启动 SearXNG

先保证你在searxng-docker这个目录,如果不在,请通过下方命令来cd到这个目录

cd /usr/local/searxng-docker

然后启动SearXNG

sudo docker-compose up

运行没问题就丢Docker守护进程吧

sudo docker-compose up -d

如果这篇文章有帮助到你,可以通过下方的RSS订阅本站点,也可以请Itakashi喝杯茶。