1. 程式人生 > >如何修改容器內的/etc/resolv.conf

如何修改容器內的/etc/resolv.conf

any cal svc emp catalina echo count class acc

源由不表,暫且略過。 直接說workaround.

1.打開scc對root權限的控制

$ oc create serviceaccount useroot
$ oc adm policy add-scc-to-user anyuid -z useroot
$ oc patch dc/mytomcat --patch {"spec":{"template":{"spec":{"serviceAccountName": "useroot"}}}}

2.修改應用鏡像, 構建一個Dockerfile

[root@master tomcat]# cat Dockerfile 
FROM docker
-registry.default.svc:5000/myproject/tomcat:8-slim COPY startapp.sh /usr/local/tomcat/bin/startapp.sh CMD ["/usr/local/tomcat/bin/startapp.sh"]

其中startapp.sh為

[root@master tomcat]# cat startapp.sh 
#!/bin/bash

echo "startup ...."

cp /etc/resolv.conf /etc/resolv.conf1
sed -i "s/:5/:5 single-request/" /etc/resolv.conf1
cp 
/etc/resolv.conf1 /etc/resolv.conf /usr/local/tomcat/bin/catalina.sh run

3.推送鏡像到倉庫

docker build -t docker-registry.default.svc:5000/myproject/mytomcat:8-slim .
docker push docker-registry.default.svc:5000/myproject/mytomcat:8-slim

查看結果

技術分享圖片

如何修改容器內的/etc/resolv.conf