0

I have a spring boot service which runs fine as spring boot app. I have created docker image out of it using docker file. When the image start, application seems starting fine till a point when it try to resolve external host (I have couple fo external service configured based on profile and I am running in dev profile which will communicate with external service like consule , mysql etc). It throws unknownhost exception. Same application run fine and able to run and communicate with external services while running it as spring boot app/service in my local machine . It seems like the issue is between host and docker container not able to use dns of host. Any help, how can I resolve the issue ?

NRA
  • 877
  • 1
  • 8
  • 16

1 Answers1

0

From the Docker documentation:

https://docs.docker.com/config/containers/container-networking/#ip-address-and-hostname

DNS services

By default, a container inherits the DNS settings of the Docker daemon, including the /etc/hosts and /etc/resolv.conf.You can override these settings on a per-container basis.

Flag         Description
--dns        The IP address of a DNS server. To specify multiple DNS servers, use 
             multiple --dns flags. If the container cannot reach any of the IP
             addresses you specify, Google’s public DNS server 8.8.8.8 is added, 
             so that your container can resolve internet domains.
--dns-search A DNS search domain to search non-fully-qualified hostnames. 
             To specify multiple DNS search prefixes, use multiple --dns-search flags.
--dns-opt    A key-value pair representing a DNS option and its value. See your
             operating system’s documentation for resolv.conf for valid options.
--hostname   The hostname a container uses for itself. Defaults to the container’s 
             ID if not specified.

See also:

paulsm4
  • 114,292
  • 17
  • 138
  • 190