**Purpose**: Deploys a SearX Meta Search Engine Server

## Docker Configuration
```jsx title="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
```

```jsx title=".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.
``` yaml
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
```