66 lines
1.8 KiB
YAML
66 lines
1.8 KiB
YAML
services:
|
|
gluetun:
|
|
image: qmcgaw/gluetun:latest
|
|
container_name: gluetun
|
|
cap_add:
|
|
- NET_ADMIN
|
|
devices:
|
|
- /dev/net/tun:/dev/net/tun
|
|
volumes:
|
|
- /home/user/Perplexica/gluetun:/gluetun # in gluetun folder have servers.json
|
|
environment:
|
|
- VPN_SERVICE_PROVIDER=vpnprovidername
|
|
- OPENVPN_USER=
|
|
- OPENVPN_PASSWORD=
|
|
- SERVER_COUNTRIES=United States
|
|
- SERVER_HOSTNAMES=
|
|
- TZ=America/Phoenix
|
|
- BLOCK_MALICIOUS=on
|
|
- BLOCK_SURVEILLANCE=on
|
|
- BLOCK_ADS=on
|
|
- DOT=on
|
|
- FIREWALL_OUTBOUND_SUBNETS=192.168.1.0/24
|
|
networks:
|
|
- perplexica-network
|
|
ports:
|
|
- 3001:3001
|
|
- 3000:3000
|
|
- 4000:8080
|
|
restart: unless-stopped
|
|
|
|
searxng:
|
|
image: docker.io/searxng/searxng:latest
|
|
volumes:
|
|
- ./searxng:/etc/searxng:rw
|
|
network_mode: 'service:gluetun'
|
|
depends_on:
|
|
- gluetun
|
|
restart: unless-stopped
|
|
|
|
perplexica-backend:
|
|
build:
|
|
context: .
|
|
dockerfile: backend.dockerfile
|
|
args:
|
|
- SEARXNG_API_URL=http://localhost:8080 # localhost is important as it's in gluetun's network for DNS
|
|
depends_on:
|
|
- gluetun
|
|
- searxng
|
|
network_mode: 'service:gluetun'
|
|
restart: unless-stopped
|
|
|
|
perplexica-frontend:
|
|
build:
|
|
context: .
|
|
dockerfile: app.dockerfile
|
|
args:
|
|
- NEXT_PUBLIC_API_URL=http://localhost:3001/api # if running on server and accessing from another machine add host ip of server, 192.168.x.x
|
|
- NEXT_PUBLIC_WS_URL=ws://localhost:3001 # # if running on server and accessing from another machine add host ip of server
|
|
depends_on:
|
|
- gluetun
|
|
- perplexica-backend
|
|
network_mode: 'service:gluetun'
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
perplexica-network:
|