51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| **Purpose**: Deploys a SearX Meta Search Engine Server
 | |
| 
 | |
| ## Docker Configuration
 | |
| ```yaml 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
 | |
| ```
 | |
| 
 | |
| ```yaml 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
 | |
| ``` |