美文网首页Docker&Kubernetes
运行docker容器时报standard_init_linux.

运行docker容器时报standard_init_linux.

作者: 骆建峰Jeff | 来源:发表于2018-01-28 21:52 被阅读0次

不知道有没有朋友会像我这么懒为了方便测试就用winscp远程打开docker服务器,直接创建dockerfile并进行调试的呢。

如果有的话我想一定遇到过这个问题:

运行后容器没有驻留,而是异常中止了,使用dokcer logs查看日志却报

standard_init_linux.go:195: exec user process caused "no such file or directory"

开始我还以为是缺了哪个文件,后来经过一番查找,原来是dos字符与unix字符的问题。

原因是我使用的Notepad++默认是以DOS文本格式来创建的,所以才导致这样的问题。

使用以下命令确认是不是这个原因:

cat -v run-lamp.sh 

#!/bin/bash^M

^M

# enable php short tags:^M

/bin/sed -i "s/short_open_tag\ \=\ Off/short_open_tag\ \=\ On/g" /etc/php.ini^M

^M

就是^M这个造成的问题。

解决方法:

安装dos2unix

 yum install dos2unix

将相关文件转换一下字符即可:

dos2unix Dockerfile

dos2unix run-lamp.sh

重新build可以正常运行了

相关文章

网友评论

    本文标题:运行docker容器时报standard_init_linux.

    本文链接:https://www.haomeiwen.com/subject/tottzxtx.html