设置在Kubernetes中运行的容器的主机名
我想设置在Kubernetes内部运行的容器中的主机名,但Kubernetes似乎覆盖了我在运行时设置的任何东西。
我已经尝试在Docker镜像中设置/ etc / hostname,我正在使用Kubernetes,并在Dockerfile的CMD中包括echo "host.example.com > /etc/hostname"
。
似乎有一个docker标志-h
来设置主机名。 有没有办法让我在我的复制控制器中指定它应该启动一个特殊的标志的容器?
容器的Debian,如果有帮助。
我以前的答案是不正确的,用正确的信息编辑
docker run
的-h
标志将在创build时设置容器的主机名。
testing一下: docker run -h test.example.com -it ubuntu /bin/bash
--hostname
docker start
命令不具有相同的-h
或--hostname
参数。 似乎不可能更改现有容器的主机名,只是从图像中更换一个新的容器。
然而w / r / t Kubernetes: Github上有一个关于Kubernetes如何处理主机名的问题。 看起来Kubernetes似乎并不直接暴露docker的主机名,但是你可以通过你的pod名字来影响它