使用nsenter进入Docker容器后端报错:mesg: ttyname failed: No such device
问题[root@cen76-1 ~]# cat docker_in.sh#!/bin/bash# Use nsenter to access dockerdocker_in(){NAME_ID=$1PID=$(docker inspect --format "{{ .State.Pid }}" $NAME_ID)nsenter --target $PID --mo...
·
问题
[root@cen76-1 ~]# cat docker_in.sh
#!/bin/bash
# Use nsenter to access docker
docker_in(){
NAME_ID=$1
PID=$(docker inspect --format "{{ .State.Pid }}" $NAME_ID)
nsenter --target $PID --mount --uts --ipc --net --pid
}
docker_in $1
[root@cen76-1 _data]# bash /root/docker_in.sh nginx-volume-test1
mesg: ttyname failed: No such device
解决办法
- 解决方法是在 nsenter 指令后面指定一个执行的shell 如:/bin/bash
[root@cen76-1 ~]# cat docker_in.sh
#!/bin/bash
# Use nsenter to access docker
docker_in(){
NAME_ID=$1
PID=$(docker inspect --format "{{ .State.Pid }}" $NAME_ID)
nsenter --target $PID --mount --uts --ipc --net --pid /bin/bash
}
docker_in $1
[root@cen76-1 ~]# ./docker_in.sh nginx-volume-test1
root@50541bd1e322:/#
更多推荐
已为社区贡献4条内容
所有评论(0)