version: '2.4' services: batman: build: batman/ env_file: .env cap_add: - NET_ADMIN sysctls: - net.ipv6.conf.default.disable_ipv6=0 - net.ipv4.ip_forward=1 - net.ipv4.conf.all.forwarding=1 - net.ipv6.conf.all.forwarding=1 - net.ipv4.conf.all.src_valid_mark=1 volumes: - type: bind source: ./wg0.conf target: /wireguard.conf read_only: true ports: - 10000:10000/udp #privileged: true wireguard: build: wireguard/ env_file: .env cap_add: - NET_ADMIN sysctls: - net.ipv6.conf.default.disable_ipv6=0 - net.ipv4.ip_forward=1 - net.ipv4.conf.all.forwarding=1 - net.ipv4.conf.all.src_valid_mark=1 - net.ipv6.conf.all.disable_ipv6=0 volumes: - type: bind source: ./wg0.conf target: /wireguard.conf read_only: true networks: vpn_frontend: ipv4_address: 172.28.0.2 ipv6_address: fc00:172:28::2 fastd: build: fastd/ env_file: .env cap_add: - NET_ADMIN devices: - /dev/net/tun:/dev/net/tun network_mode: service:batman depends_on: - batman dhcpd_v4: build: dhcpd/ env_file: .env environment: DHCPD_MODE: 4 cap_add: - NET_ADMIN network_mode: service:batman volumes: - dhcpd_v4_leases:/var/lib/dhcp depends_on: - batman dhcpd_v6: build: dhcpd/ env_file: .env environment: DHCPD_MODE: 6 cap_add: - NET_ADMIN network_mode: service:batman volumes: - dhcpd_v6_leases:/var/lib/dhcp depends_on: - batman radvd: build: radvd/ env_file: .env cap_add: - NET_ADMIN network_mode: service:batman debug: build: debug/ cap_add: - NET_ADMIN - SYS_ADMIN network_mode: service:batman privileged: true volumes: dhcpd_v4_leases: dhcpd_v6_leases: networks: vpn_frontend: enable_ipv6: yes ipam: driver: default config: - subnet: "172.28.0.0/24" - subnet: "fc00:172:28::/64"