mirror of https://github.com/docker/cli.git
Allow --hostname with --net=host
Docker creates a UTS namespace by default, even with --net=host, so it is reasonable to let the user set the hostname. Note that --hostname is forbidden if the user specifies --uts=host. Closes #12076 Signed-off-by: Jason Heiss <jheiss@aput.net>
This commit is contained in:
parent
2422bc30f5
commit
6bcb137d2f
|
@ -237,15 +237,13 @@ $ docker run -it --rm --pid=host myhtop
|
||||||
The UTS namespace is for setting the hostname and the domain that is visible
|
The UTS namespace is for setting the hostname and the domain that is visible
|
||||||
to running processes in that namespace. By default, all containers, including
|
to running processes in that namespace. By default, all containers, including
|
||||||
those with `--net=host`, have their own UTS namespace. The `host` setting will
|
those with `--net=host`, have their own UTS namespace. The `host` setting will
|
||||||
result in the container using the same UTS namespace as the host.
|
result in the container using the same UTS namespace as the host. Note that
|
||||||
|
`--hostname` is invalid in `host` UTS mode.
|
||||||
|
|
||||||
You may wish to share the UTS namespace with the host if you would like the
|
You may wish to share the UTS namespace with the host if you would like the
|
||||||
hostname of the container to change as the hostname of the host changes. A
|
hostname of the container to change as the hostname of the host changes. A
|
||||||
more advanced use case would be changing the host's hostname from a container.
|
more advanced use case would be changing the host's hostname from a container.
|
||||||
|
|
||||||
> **Note**: `--uts="host"` gives the container full access to change the
|
|
||||||
> hostname of the host and is therefore considered insecure.
|
|
||||||
|
|
||||||
## IPC settings (--ipc)
|
## IPC settings (--ipc)
|
||||||
|
|
||||||
--ipc="" : Set the IPC mode for the container,
|
--ipc="" : Set the IPC mode for the container,
|
||||||
|
@ -365,8 +363,11 @@ name, they must be linked.
|
||||||
With the network set to `host` a container will share the host's
|
With the network set to `host` a container will share the host's
|
||||||
network stack and all interfaces from the host will be available to the
|
network stack and all interfaces from the host will be available to the
|
||||||
container. The container's hostname will match the hostname on the host
|
container. The container's hostname will match the hostname on the host
|
||||||
system. Note that `--add-host` `--hostname` `--dns` `--dns-search`
|
system. Note that `--add-host` `--dns` `--dns-search`
|
||||||
`--dns-opt` and `--mac-address` are invalid in `host` netmode.
|
`--dns-opt` and `--mac-address` are invalid in `host` netmode. Even in `host`
|
||||||
|
network mode a container has its own UTS namespace by default. As such
|
||||||
|
`--hostname` is allowed in `host` network mode and will only change the
|
||||||
|
hostname inside the container.
|
||||||
|
|
||||||
Compared to the default `bridge` mode, the `host` mode gives *significantly*
|
Compared to the default `bridge` mode, the `host` mode gives *significantly*
|
||||||
better networking performance since it uses the host's native networking stack
|
better networking performance since it uses the host's native networking stack
|
||||||
|
|
Loading…
Reference in New Issue