7bd61bbf43
When `network.mode = "bridge"`, we create a pause container in Docker with no networking so that we have a process to hold the network namespace we create in Nomad. The default `/etc/hosts` file of that pause container is then used for all the Docker tasks that share that network namespace. Some applications rely on this file being populated. This changeset generates a `/etc/hosts` file and bind-mounts it to the container when Nomad owns the network, so that the container's hostname has an IP in the file as expected. The hosts file will include the entries added by the Docker driver's `extra_hosts` field. In this changeset, only the Docker task driver will take advantage of this option, as the `exec`/`java` drivers currently copy the host's `/etc/hosts` file and this can't be changed without breaking backwards compatibility. But the fields are available in the task driver protobuf for community task drivers to use if they'd like. |
||
---|---|---|
.. | ||
proto | ||
testutils | ||
utils | ||
client.go | ||
cstructs.go | ||
driver.go | ||
errors.go | ||
execstreaming.go | ||
plugin.go | ||
server.go | ||
task_handle.go | ||
utils.go | ||
utils_test.go | ||
versions.go |