我想要的:
在Jenkins master创建的kubernetes pod中动态添加host,并允许pod中挂载的docker使用host。
我正在使用Jenkins为docker build创建动态从属,并为docker build和docker push创建docker-in-docker从属容器。docker-in-docker是通过将VM的docker.sock挂载到容器来创建的:
volumeMounts:
- name: hostpathvolume
mountPath: '/var/run/docker.sock'我正在使用kubernetes的hostAliases向主机文件附加一些私有docker注册表:
hostAliases:
- ip: 9.110.73.11
hostnames:
- devopsprod.icp
- ip: 9.119.42.60
hostnames:
- devops.icp我已经确认创建的pod在/etc/hosts中有这些主机,但是当我运行:
docker login -u xxx -p xxx devops.icp:8500我收到一个DNS错误:
Error response from daemon: Get https://devops.icp:8500/v2/: dial tcp: lookup devops.icp on 0.0.0.0:00: no such host这意味着我在容器中运行的docker没有使用pod中的/etc/hosts来查找ip地址。有没有办法解决这个问题?我不想在VM的/etc/hosts文件中手动添加主机。
发布于 2018-10-09 22:29:33
您已经将docker.sock挂载到实例中,但是Docker仍然使用节点中的配置,而不是实例中的配置。没有其他选项,您需要向每个节点上的/etc/hosts添加别名才能使其工作。
https://stackoverflow.com/questions/52716010
复制相似问题