Skip to content

SearX

Purpose: Deploys a SearX Meta Search Engine Server

Docker Configuration

docker-compose.yml
version: '3'
services:
  searx:
    image: searx/searx:latest
    ports:
      - 8080:8080
    volumes:
      - /srv/containers/searx/:/etc/searx
    restart: always
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.searx.rule=Host(`searx.bunny-lab.io`)"
      - "traefik.http.routers.searx.entrypoints=websecure"
      - "traefik.http.routers.searx.tls.certresolver=letsencrypt"
      - "traefik.http.services.searx.loadbalancer.server.port=8080"
    networks:
        docker_network:
          ipv4_address: 192.168.5.124
networks:
  docker_network:
    external: true
.env
Not Applicable

Traefik Reverse Proxy Configuration

If the container does not run on the same host as Traefik, you will need to manually add configuration to Traefik's dynamic config file, outlined below.

http:
  routers:
    searx:
      entryPoints:
        - websecure
      tls:
        certResolver: letsencrypt
      service: searx
      rule: Host(`searx.bunny-lab.io`)

  services:
    searx:
      loadBalancer:
        servers:
          - url: http://192.168.5.124:8080
        passHostHeader: true