4.2 KiB
4.2 KiB
克隆项目
cd /data
git clone https://github.com/searxng/searxng-docker.git
12
配置docker-compose
本次安装不采用caddy容器做代理,采用本地nginx做代理,因此注释掉caddy容器内容。
version: '3.7'
services:
# 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
redis:
container_name: redis
image: "redis:alpine"
command: redis-server --save "" --appendonly "no"
networks:
- searxng
tmpfs:
- /var/lib/redis
cap_drop:
- ALL
cap_add:
- SETGID
- SETUID
- DAC_OVERRIDE
searxng:
container_name: searxng
image: searxng/searxng:latest
networks:
- searxng
ports:
- "127.0.0.1:8080:8080"
volumes:
- ./searxng:/etc/searxng:rw
environment:
- SEARXNG_BASE_URL=https://${SEARXNG_HOSTNAME:-localhost}/
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
- DAC_OVERRIDE
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "1"
networks:
searxng:
ipam:
driver: default
volumes:
caddy-data:
caddy-config:
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
配置env文件
cd /data/searxng-docker
vim .env
12
/data/searxng-docker
[root@racknerd-944314 searxng-docker]# cat .env
# By default listen on https://localhost
# To change this:
# * uncomment SEARXNG_HOSTNAME, and replace <host> by the SearXNG hostname
# * uncomment LETSENCRYPT_EMAIL, and replace <email> by your email (require to create a Let's Encrypt certificate)
SEARXNG_HOSTNAME=www.xxx.xx
# LETSENCRYPT_EMAIL=<email>
123456789
将SEARXNG_HOSTNAME修改为域名
配置settings.yml文件
cd /data/searxng-docker/searxng
1
生成secret_key秘钥
sed -i "s|ultrasecretkey|$(openssl rand -hex 32)|g" searxng/settings.yml
1
解决打开域名“too many requests”
limiter: false
1
添加engines配置,解决google引擎 “too many requests”
engines:
- name: google
engine: google
shortcut: go
use_mobile_ui: true
- name: google images
engine: google_images
use_mobile_ui: true
- name: google news
engine: google_news
use_mobile_ui: true
- name: google videos
engine: google_videos
use_mobile_ui: true
- name: google scholar
engine: google_scholar
use_mobile_ui: true
- name: google play apps
engine: google_play_apps
use_mobile_ui: true
完整settings.yml文件配置
# see https://docs.searxng.org/admin/engines/settings.html#use-default-settings
use_default_settings: true
server:
# base_url is defined in the SEARXNG_BASE_URL environment variable, see .env and docker-compose.yml
secret_key: "3af379c948a8dfc252bc57f115c08c2f1ef7eaeab44a079082a9edd92d3d34ae" # change this!
limiter: false # can be disabled for a private instance
image_proxy: true
ui:
static_use_hash: true
redis:
url: redis://redis:6379/0
engines:
- name: google
engine: google
shortcut: go
use_mobile_ui: true
- name: google images
engine: google_images
use_mobile_ui: true
- name: google news
engine: google_news
use_mobile_ui: true
- name: google videos
engine: google_videos
use_mobile_ui: true
- name: google scholar
engine: google_scholar
use_mobile_ui: true
- name: google play apps
engine: google_play_apps
use_mobile_ui: true
根据docker-compose生成容器
cd /data/searxng-docker/
docker-compose up -d
docker-compose stop searxng
docker-compose rm searxng