68 lines
1.2 KiB
YAML
68 lines
1.2 KiB
YAML
|
|
version: '3.8'
|
||
|
|
|
||
|
|
services:
|
||
|
|
app-ui:
|
||
|
|
build: ./APP_UI
|
||
|
|
container_name: ovp-ui
|
||
|
|
ports:
|
||
|
|
- "80:80"
|
||
|
|
depends_on:
|
||
|
|
- app-api
|
||
|
|
- app-profiler
|
||
|
|
networks:
|
||
|
|
- ovp-net
|
||
|
|
|
||
|
|
app-gatherer:
|
||
|
|
build:
|
||
|
|
context: ./APP_CORE
|
||
|
|
dockerfile: Dockerfile.gatherer
|
||
|
|
container_name: ovp-gatherer
|
||
|
|
volumes:
|
||
|
|
- ovp_logs:/var/log/openvpn
|
||
|
|
- db_data:/app/db # Assuming APP_CORE looks for DB in /app/db
|
||
|
|
depends_on:
|
||
|
|
- app-profiler
|
||
|
|
networks:
|
||
|
|
- ovp-net
|
||
|
|
|
||
|
|
app-api:
|
||
|
|
build:
|
||
|
|
context: ./APP_CORE
|
||
|
|
dockerfile: Dockerfile.api
|
||
|
|
container_name: ovp-api
|
||
|
|
ports:
|
||
|
|
- "5001:5001"
|
||
|
|
volumes:
|
||
|
|
- db_data:/app/db
|
||
|
|
networks:
|
||
|
|
- ovp-net
|
||
|
|
environment:
|
||
|
|
- JWT_SECRET=${JWT_SECRET:-supersecret}
|
||
|
|
|
||
|
|
app-profiler:
|
||
|
|
build: ./APP_PROFILER
|
||
|
|
container_name: ovp-profiler
|
||
|
|
cap_add:
|
||
|
|
- NET_ADMIN
|
||
|
|
devices:
|
||
|
|
- "/dev/net/tun:/dev/net/tun"
|
||
|
|
ports:
|
||
|
|
- "8000:8000"
|
||
|
|
- "1194:1194/udp"
|
||
|
|
volumes:
|
||
|
|
- ovp_logs:/var/log/openvpn
|
||
|
|
- ovp_config:/etc/openvpn
|
||
|
|
networks:
|
||
|
|
- ovp-net
|
||
|
|
environment:
|
||
|
|
- JWT_SECRET=${JWT_SECRET:-supersecret}
|
||
|
|
|
||
|
|
networks:
|
||
|
|
ovp-net:
|
||
|
|
driver: bridge
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
ovp_logs:
|
||
|
|
ovp_config:
|
||
|
|
db_data:
|