112 lines
2.5 KiB
YAML
112 lines
2.5 KiB
YAML
version: '3.7'
|
|
|
|
services:
|
|
|
|
caddy:
|
|
container_name: caddy
|
|
image: abiosoft/caddy:1.0.3-no-stats
|
|
ports:
|
|
- 80:80
|
|
- 443:443
|
|
network_mode: host
|
|
command: -email ${LETSENCRYPT_EMAIL} -agree=${LETSENCRYPT_AGREE} -log stdout -host ${SEARX_HOSTNAME} -conf /etc/Caddyfile
|
|
volumes:
|
|
- ./Caddyfile:/etc/Caddyfile:rw
|
|
- ./caddy:/root/.caddy:rw
|
|
- ./srv:/srv:rw
|
|
- searx-checker:/srv/searx-checker:rw
|
|
environment:
|
|
- SEARX_HOSTNAME=${SEARX_HOSTNAME}
|
|
- SEARX_PROTOCOL=${SEARX_PROTOCOL:-}
|
|
- SEARX_TLS=${SEARX_TLS:-}
|
|
- FILTRON_USER=${FILTRON_USER}
|
|
- FILTRON_PASSWORD=${FILTRON_PASSWORD}
|
|
cap_drop:
|
|
- ALL
|
|
cap_add:
|
|
- NET_BIND_SERVICE
|
|
- DAC_OVERRIDE
|
|
|
|
filtron:
|
|
container_name: filtron
|
|
image: dalf/filtron
|
|
hostname: filtron
|
|
restart: always
|
|
ports:
|
|
- 127.0.0.1:4040:4040
|
|
- 127.0.0.1:4041:4041
|
|
networks:
|
|
searx:
|
|
ipv4_address: 10.10.10.3
|
|
command: -listen 10.10.10.3:4040 -api 10.10.10.3:4041 -target 10.10.10.4:8080
|
|
volumes:
|
|
- ./rules.json:/etc/filtron/rules.json:rw
|
|
read_only: true
|
|
cap_drop:
|
|
- ALL
|
|
|
|
searx:
|
|
container_name: searx
|
|
image: searx/searx:latest
|
|
hostname: searx
|
|
restart: always
|
|
networks:
|
|
searx:
|
|
ipv4_address: 10.10.10.4
|
|
command: ${SEARX_COMMAND:-}
|
|
volumes:
|
|
- ./searx:/etc/searx:rw
|
|
environment:
|
|
- BIND_ADDRESS=10.10.10.4:8080
|
|
- BASE_URL=https://${SEARX_HOSTNAME}/
|
|
- MORTY_URL=https://${SEARX_HOSTNAME}/morty/
|
|
- MORTY_KEY=${MORTY_KEY}
|
|
cap_drop:
|
|
- ALL
|
|
cap_add:
|
|
- CHOWN
|
|
- SETGID
|
|
- SETUID
|
|
- DAC_OVERRIDE
|
|
|
|
morty:
|
|
container_name: morty
|
|
image: dalf/morty
|
|
hostname: morty
|
|
restart: always
|
|
ports:
|
|
- 127.0.0.1:3000:3000
|
|
networks:
|
|
searx:
|
|
ipv4_address: 10.10.10.5
|
|
command: -listen 10.10.10.5:3000 -timeout 6 -ipv6
|
|
environment:
|
|
- MORTY_KEY=${MORTY_KEY}
|
|
logging:
|
|
driver: none
|
|
read_only: true
|
|
cap_drop:
|
|
- ALL
|
|
|
|
searx-checker:
|
|
container_name: searx-checker
|
|
image: searx/searx-checker
|
|
hostname: searx-checker
|
|
restart: always
|
|
networks:
|
|
searx:
|
|
ipv4_address: 10.10.10.6
|
|
command: -cron -o html/data/status.json http://10.10.10.4:8080
|
|
volumes:
|
|
- searx-checker:/usr/local/searx-checker/html/data:rw
|
|
|
|
networks:
|
|
searx:
|
|
ipam:
|
|
driver: default
|
|
config:
|
|
- subnet: 10.10.10.0/24
|
|
|
|
volumes:
|
|
searx-checker:
|