如何在OpenShift窗格中更改/etc/resolv.conf文件

时间:2018-07-06 02:10:40

标签: docker dns openshift openshift-origin

我有一个部署到OpenShift的docker映像(使用oc new-app)。但是,由于/etc/resolv.conf中缺少dns搜索条目,它无法正常工作。当我从docker映像创建容器并运行它时,可以指定参数--dns-search。

在使用oc new-app将映像部署到OpenShift期间,如何做类似的事情?

2 个答案:

答案 0 :(得分:1)

您可以在主服务器中编辑Node的配置映射

inline constexpr const T &operator()(const Integer i)const

对于所有计算节点,请通过以下命令编辑配置映射。(只需在主服务器中执行)

# oc get cm -n openshift-node

使用您的DNS IP编辑dnsIP部分。然后重新启动服务

#  oc edit cm node-config-compute  -n openshift-node

......
dnsBindAddress: 127.0.0.1:53
    dnsDomain: cluster.local
    dnsIP: 10.0.80.11
    dnsNameservers: null
    dnsRecursiveResolvConf: /etc/origin/node/resolv.conf
.......

DNS ip将放在Pods的所有/etc/resolv.conf文件中。

存在详细信息here

答案 1 :(得分:0)

有几种选择:

  1. 如果使用以下命令运行,请输入容器:docker exec -it container_id bash,然后编辑文件,然后使用docker commit 保存更改。
  2. 您可以在Dockerfile中添加名称:CMD cat name >> / etc / resolve.conf
  3. 将resolv.conf从系统安装到映像。