首页 > 代码库 > docker exec重启容器内部服务遇到的问题
docker exec重启容器内部服务遇到的问题
起因:因为更改ldap域名,老的ldap服务器还是不断有请求发过来,经过排查发现是虚拟机的nslcd发过来的请求,但是nslcd服务配置中配置的是域名而不是ldap的ip地址,试了一下,重启服务才能去连接新的ldap服务,但是由于虚拟机众多,一个一个执行时灰常傻X的,所以打算用docker exec来循环执行,但是执行遇到了问题,如下
[root@VM-1-10-11 ~]# for i in tianpei.wang_172.16.162.105; do docker exec -i $i /etc/init.d/nslcd restart; done
Stopping nslcd: [FAILED]
Starting nslcd: nslcd: daemon may already be active, cannot acquire lock (/var/run/nslcd/nslcd.pid): Permission denied
[FAILED]
权限不够
解决方法:用bash来执行标准输入,问题解决
[root@VM-1-10-11 ~]# for i in tianpei.wang_172.16.162.105; do echo ‘/etc/init.d/nslcd restart‘|docker exec -i $i bash; done
Stopping nslcd: [ OK ]
Starting nslcd: [ OK ]
docker exec重启容器内部服务遇到的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。