Client-Ansible-Setup/services/service_searxng/docker-compose.yml

66 lines
1.6 KiB
YAML
Executable File

# {{ ansible_managed }}
version: '3.7'
services:
# Gluetun is used to connect container to VPN
searxng-gluetun:
image: qmcgaw/gluetun
cap_add:
- NET_ADMIN
environment:
- VPN_SERVICE_PROVIDER=custom
- VPN_TYPE=wireguard
- VPN_ENDPOINT_IP={{ proxy_server_ip }}
- VPN_ENDPOINT_PORT={{ proxy_server_vpn_port }}
- WIREGUARD_PUBLIC_KEY={{ vpn_server_pubkey }}
- WIREGUARD_PRIVATE_KEY={{ searxng_service_privkey }}
- WIREGUARD_ADDRESSES=10.0.0.4/32
- FIREWALL_VPN_INPUT_PORTS=8080
ports:
- "8080:8080"
searxng-redis:
network_mode: "service:searxng-gluetun"
container_name: redis
image: "redis:alpine"
command: redis-server --save "" --appendonly "no"
tmpfs:
- /var/lib/redis
cap_drop:
- ALL
cap_add:
- SETGID
- SETUID
- DAC_OVERRIDE
# If you want to change container listen port from default 8080 https://github.com/searxng/searxng-docker/issues/20
# Set environment variable BIND_ADDRESS, example:
# environment:
# BIND_ADDRESS=0.0.0.0:1234
# Then you can expose the newly changed port on gluetun
searxng:
network_mode: "service:searxng-gluetun"
container_name: searxng
image: searxng/searxng:latest
# UID/GID of spool1_searxng
# user: 1008:1009
# UID/GID of root
user: 0:0
volumes:
- ./searxng-data:/etc/searxng:rw
environment:
- SEARXNG_BASE_URL=http://${SEARXNG_HOSTNAME:-localhost}/
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "1"