Это бесплатная поисковая платформа с полностью открытым исходным кодом, основанная на Python. Она предоставляет вам более 70 основных результатов поиска видео, изображений, поиска, магнитов и других веб-сайтов с Google, Bing, Yahoo и других веб-сайтов, а также оптимизирует результаты поиска без необходимости. Он хранит любую информацию о вашем поиске и очень удобен в настройке.
Учтите, что пользоваться им будет очень неудобно, если у вас нет доступа к внешней сети. Поэтому, если вы хотите его построить, рекомендуется использовать сервер, не являющийся материковым, и не рекомендуется использовать материковый сервер.
Проектная документация:Welcome to SearXNG
проектGitHub:searxng/searxng(github.com)
проектdocker:searxng/searxng-docker(github.com)
Справочные документы к этой статье:blog.laoda.de/archives/docker-compose-install-searxng
Эта система может использовать Ubuntu20.04/22.04. Партнеры по системам Debian и CentOS могут самостоятельно корректировать инструкции по развертыванию.
Вы можете легко установить docker и docker-compose с помощью Ubuntu:
snap install docker
Создайте каталог установки:
mkdir -p /root/data/docker_data/searxng
cd /root/data/docker_data/searxng
git clone https://github.com/searxng/searxng-docker.git
cd searxng-docker
rm -f docker-compose.yaml
vim docker-compose.yaml
Поскольку по умолчанию для обратной генерации используется caddy, существует проблема, заключающаяся в том, что он может конфликтовать с портом 80 на вашем веб-сайте, в результате чего searXNG не сможет сосуществовать с другими веб-сайтами на вашем сервере. Мы закомментируем часть caddy здесь и. вместо этого используйте его NginxProxyManager выполняет обратный прокси.
Переключиться на английский метод ввода,нажиматьi
Введите контент。
version: '3.7'
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
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:
- "8180:8080" # Порт в левой части двоеточия можно изменить, но порт в правой части менять не следует.
volumes:
- ./searxng:/etc/searxng:rw
environment:
- SEARXNG_BASE_URL=https://${SEARXNG_HOSTNAME:-https://ваше доменное имя}/
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:
После завершения ввода,Переключиться на английский метод ввода,нажимать:wq
Сохранить и выйти。
Тогда давайте отредактируем его.env
документ。
cd /root/data/docker_data/searxng/searxng-docker
rm -f .env
vim .env
Переключиться на английский метод ввода,нажиматьi
Введите контент。
SEARXNG_HOSTNAME=#Ваше доменное имя! ! !
Просто посмотрите на строку выше,Не беспокойся о других вещах!Обратите внимание на переднюю часть#
Удалить номер!
Не беспокойтесь об электронном письме во второй строке. Это адрес электронной почты, запрошенный caddy. Мы не используем caddy.
После завершения ввода,Переключиться на английский метод ввода,нажимать:wq
Сохранить и выйти。
cd /root/data/docker_data/searxng/searxng-docker
sed -i "s|ultrasecretkey|$(openssl rand -hex 32)|g" searxng/settings.yml # сгенерировать ключ
Наконец запустите:
cd /root/data/docker_data/searxng/searxng-docker
docker-compose up -d
После завершения вы можете пройтиip:8180
посетить。
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 # Повторно обновить текущее изображение
cd /root/data/docker_data/searxng/searxng-docker # Введите папку, в которой находится docker-compose.
docker-compose down # Остановите контейнер, и данные, сопоставленные с локальным, в это время не будут удалены.
rm -rf /root/data/docker_data/searxng/searxng-docker # Полностью удалить данные, сопоставленные локально
Установить:[docker] Артефакт обратного прокси — — Nginx Proxy Manager
использовать:【docker】Nginx Proxy Использование менеджера