Name resolution not working with docker containers

I have installed HAproxy on two vagrant VM in virtualbox (both debian buster, on bridged network connection) and has setup (installed on the VM) keepalived to manage a single VIP. I am running two nginx docker containers on each machine. When I use the IP address for the ‘backend’ everything works as it should.
When I use the hostname of the container HAproxy says

Nov 16 21:12:05 buster haproxy[24426]: [ALERT] 320/211205 (24426) : parsing [/etc/haproxy/haproxy.cfg:48] : 'server server1' : could not resolve address 'nginx1'.
Nov 16 21:12:05 buster haproxy[24426]: [ALERT] 320/211205 (24426) : parsing [/etc/haproxy/haproxy.cfg:49] : 'server server2' : could not resolve address 'nginx2'.

Docker setup

docker network create web-net
docker run --name nginx1 --hostname nginx1 --network web-net -d nginxdemos/hello
docker run --name nginx2 --hostname nginx2 --network web-net -d nginxdemos/hello

HAproxy configuration

global
    log /dev/log    local0
    log /dev/log    local1 notice
    chroot /var/lib/haproxy
    stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
    stats timeout 30s
    user haproxy
    group haproxy
    daemon


defaults
    log     global
    mode    http
    option  httplog
    option  dontlognull
    timeout connect 5000
    timeout client  50000
    timeout server  50000
    errorfile 400 /etc/haproxy/errors/400.http
    errorfile 403 /etc/haproxy/errors/403.http
    errorfile 408 /etc/haproxy/errors/408.http
    errorfile 500 /etc/haproxy/errors/500.http
    errorfile 502 /etc/haproxy/errors/502.http
    errorfile 503 /etc/haproxy/errors/503.http
    errorfile 504 /etc/haproxy/errors/504.http


resolvers docker
    nameserver dns 127.0.0.11:53

frontend http-in
    bind 192.168.100.200:80    # VIP
    default_backend servers

backend servers
    balance roundrobin
    server server1 nginx1:8080 check resolvers docker resolve-prefer ipv4
    server server2 nginx2:8080 check resolvers docker resolve-prefer ipv4

If I put the IP address of the nginx containers, instead of name then everything is fine.
Can someone point me why the name resolution is not working correctly ? I tried the docker interface address. Any point to debug it correctly ?

Thank you.