Anyways I managed to get it running by using ISC DHCP relay instead of dhcp-helper.
dhcrelay/Dockerfile
FROM debian:buster-slim
RUN apt-get update
RUN apt-get install -y isc-dhcp-relay
EXPOSE 67 67/udp
ENTRYPOINT ["dhcrelay", "-d"]
docker-compose.yml
version: "3"
services:
pihole:
image: pihole/pihole:latest
ports:
- "53:53/tcp"
- "53:53/udp"
- "80:80/tcp"
environment:
ServerIP: x.x.x.x
TZ: 'Asia/Karachi'
DNS1: 1.1.1.1
DNS2: 1.0.0.1
DNSMASQ_LISTENING: all
WEBPASSWORD: xyz
volumes:
- './pihole/:/etc/pihole/'
- './dnsmasq/:/etc/dnsmasq.d/'
dns:
- 127.0.0.1
cap_add:
- NET_ADMIN
restart: always
networks:
default:
ipv4_address: 10.0.0.10
dhcrelay:
build: ./dhcrelay
restart: always
network_mode: host
command: ["-id", "eno1", "-iu", "br-pihole", "10.0.0.10"]
cap_add:
- NET_ADMIN
networks:
default:
driver: bridge
driver_opts:
com.docker.network.bridge.name: br-pihole
ipam:
config:
- subnet: 10.0.0.0/24