小编典典

standard_init_linux.go:190:exec用户进程导致“没有这样的文件或目录”-Docker

docker

在Windows 10上运行docker映像时,出现以下错误:

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

我的码头工人文件是:

FROM openjdk:8

EXPOSE 8080

VOLUME /tmp

ADD appagent.tar.gz /opt/app-agent
ADD services.jar app.jar
ADD run.sh /run.sh

# Install compiler and perl stuff
RUN apt-get update
RUN apt-get install -y build-essential
RUN apt-get install -y gcc-multilib
RUN apt-get install -y perl

# Install Percona Toolkit
RUN apt-get install --yes percona-toolkit
RUN ["chmod", "+x", "/run.sh"]
ENTRYPOINT ["/run.sh"]

脚本以 #!/ bin / sh* 开头 *

#!/bin/sh
set -e

JAVA_OPTS="-Dfile.encoding=UTF-8 -Djava.security.egd=file:/dev/urandom"

if [ "${APPD_APP_NAME}" != "" ]; then
JAVA_AGENT="-javaagent:/opt/app-agent/javaagent.jar
fi

exec java ${JVM_OPTS} ${JAVA_OPTS} ${JAVA_AGENT} -jar /app.jar

尝试了方法1: 尝试将#!/ bin / sh更改为#!/ bin / bash, 但遇到相同的错误。

尝试过的方法2:在docker文件中添加了dos2unix

RUN apt-get install -y dos2unix
RUN dos2unix /run.sh

阅读 1030

收藏
2020-06-17

共1个答案

小编典典

使用记事本++,进入编辑-> EOL转换->从CRLF更改为LF。

2020-06-17