Consul UI is not accessible when running in Docker host network mode

Hi,
I am trying to run consul docker container in host network mode as suggested on docker hub. I am unable to access the UI at port 8500

My docker host IP address: 192.168.30.12
network interface which is used by host: ens192

Here is my docker run command:

docker run -d --net=host -v /home/docker/conf.json:/consul/config/config.json -v /home/docker/data/:/consul/data/ -e CONSUL_BIND_INTERFACE=ens192 -e CONSUL_CLIENT_INTERFACE=ens192 --name=consulserver1 -d consul agent -server -bootstrap-expect=1 -client 0.0.0.0 -bind=192.168.30.12

I also see following error in docker logs

==> Found address '192.168.30.12' for interface 'ens192', setting bind option...
==> Found address '192.168.30.12' for interface 'ens192', setting client option...
==> Starting Consul agent...
              Version: '1.14.4'
           Build Date: '2023-01-26 15:47:10 +0000 UTC'
              Node ID: 'd8e91718-dcf3-70be-dd29-c558158959f0'
            Node name: 'docker-try1'
           Datacenter: 'dc1' (Segment: '<all>')
               Server: true (Bootstrap: true)
          Client Addr: [0.0.0.0] (HTTP: 8500, HTTPS: -1, gRPC: -1, gRPC-TLS: 8503, DNS: 8600)
         Cluster Addr: 192.168.30.12 (LAN: 8301, WAN: 8302)
    Gossip Encryption: false
     Auto-Encrypt-TLS: false
            HTTPS TLS: Verify Incoming: false, Verify Outgoing: false, Min Version: TLSv1_2
             gRPC TLS: Verify Incoming: false, Min Version: TLSv1_2
     Internal RPC TLS: Verify Incoming: false, Verify Outgoing: false (Verify Hostname: false), Min Version: TLSv1_2
==> Log data will now stream in as it occurs:
2023-02-17T15:18:30.052Z [WARN]  agent: BootstrapExpect is set to 1; this is the same as Bootstrap mode.
2023-02-17T15:18:30.052Z [WARN]  agent: Node name "docker-try1" will not be discoverable via DNS due to invalid characters. Valid characters include all alpha-numerics and dashes.
2023-02-17T15:18:30.052Z [WARN]  agent: bootstrap = true: do not enable unless necessary
2023-02-17T15:18:30.057Z [WARN]  agent.auto_config: BootstrapExpect is set to 1; this is the same as Bootstrap mode.
2023-02-17T15:18:30.057Z [WARN]  agent.auto_config: Node name "docker-try1" will not be discoverable via DNS due to invalid characters. Valid characters include all alpha-numerics and dashes.
2023-02-17T15:18:30.057Z [WARN]  agent.auto_config: bootstrap = true: do not enable unless necessary
2023-02-17T15:18:30.061Z [INFO]  agent.server.raft: initial configuration: index=1 servers="[{Suffrage:Voter ID:d8e91718-dcf3-70be-dd29-c558158959f0 Address:192.168.30.12:8300}]"
2023-02-17T15:18:30.061Z [INFO]  agent.server.raft: entering follower state: follower="Node at 192.168.30.12:8300 [Follower]" leader-address= leader-id=
2023-02-17T15:18:30.062Z [INFO]  agent.server.serf.wan: serf: EventMemberJoin: docker-try1.dc1 192.168.30.12
2023-02-17T15:18:30.062Z [WARN]  agent.server.serf.wan: serf: Failed to re-join any previously known node
2023-02-17T15:18:30.062Z [INFO]  agent.server.serf.lan: serf: EventMemberJoin: docker-try1 192.168.30.12
2023-02-17T15:18:30.063Z [INFO]  agent.router: Initializing LAN area manager
2023-02-17T15:18:30.063Z [WARN]  agent.server.serf.lan: serf: Failed to re-join any previously known node
2023-02-17T15:18:30.063Z [INFO]  agent.server: Adding LAN server: server="docker-try1 (Addr: tcp/192.168.30.12:8300) (DC: dc1)"
2023-02-17T15:18:30.063Z [INFO]  agent.server.autopilot: reconciliation now disabled
2023-02-17T15:18:30.064Z [INFO]  agent.server: Handled event for server in area: event=member-join server=docker-try1.dc1 area=wan
2023-02-17T15:18:30.064Z [INFO]  agent.server.cert-manager: initialized server certificate management
2023-02-17T15:18:30.064Z [INFO]  agent: Started DNS server: address=0.0.0.0:8600 network=udp
2023-02-17T15:18:30.065Z [INFO]  agent: Started DNS server: address=0.0.0.0:8600 network=tcp
2023-02-17T15:18:30.065Z [INFO]  agent: Starting server: address=[::]:8500 network=tcp protocol=http
2023-02-17T15:18:30.065Z [INFO]  agent: Started gRPC listeners: port_name=grpc_tls address=[::]:8503 network=tcp
2023-02-17T15:18:30.065Z [INFO]  agent: started state syncer
2023-02-17T15:18:30.065Z [INFO]  agent: Consul agent running!
2023-02-17T15:18:37.152Z [WARN]  agent.cache: handling error in Cache.Notify: cache-type=connect-ca-leaf error="No cluster leader" index=0
2023-02-17T15:18:37.152Z [ERROR] agent.server.cert-manager: failed to handle cache update event: error="leaf cert watch returned an error: No cluster leader"
2023-02-17T15:18:37.248Z [ERROR] agent.anti_entropy: failed to sync remote state: error="No cluster leader"
2023-02-17T15:18:39.483Z [WARN]  agent.server.raft: heartbeat timeout reached, starting election: last-leader-addr= last-leader-id=
2023-02-17T15:18:39.483Z [INFO]  agent.server.raft: entering candidate state: node="Node at 192.168.30.12:8300 [Candidate]" term=7
2023-02-17T15:18:39.486Z [INFO]  agent.server.raft: election won: term=7 tally=1
2023-02-17T15:18:39.486Z [INFO]  agent.server.raft: entering leader state: leader="Node at 192.168.30.12:8300 [Leader]"
2023-02-17T15:18:39.486Z [INFO]  agent.server: cluster leadership acquired
2023-02-17T15:18:39.487Z [INFO]  agent.server: New leader elected: payload=docker-try1
2023-02-17T15:18:39.493Z [INFO]  agent.server.autopilot: reconciliation now enabled
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="federation state anti-entropy"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="federation state pruning"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="streaming peering resources"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="metrics for streaming peering resources"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="peering deferred deletion"
2023-02-17T15:18:39.493Z [INFO]  connect.ca: initialized primary datacenter CA from existing CARoot with provider: provider=consul
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="intermediate cert renew watch"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="CA root pruning"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="CA root expiration metric"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="CA signing expiration metric"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: started routine: routine="virtual IP version check"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: stopping routine: routine="virtual IP version check"
2023-02-17T15:18:39.493Z [INFO]  agent.leader: stopped routine: routine="virtual IP version check"
2023-02-17T15:18:40.065Z [ERROR] agent.server.autopilot: Failed to reconcile current state with the desired state
2023-02-17T15:18:41.061Z [INFO]  agent: Synced node info

I think I figured it out. I had firewall turned on. As soon as I opened ports recommended by Consul’s documentation. It started working