启动容器:docker run -p 9080:9080 -v /root/app:/home/java app:v1.1
报错:standard_init_linux.go:211: exec user process caused "no such file or direct
度娘都是说:文件格式问题,但是咱没有这个问题是unix格式。
Dockerfile如下:
FROM alpine
MAINTAINER dashen
EXPOSE 9080
RUN mkdir -p /home/java
ENV JAVA_HOME="/home/java/jdk1.8"
ENV PATH="${PATH}:${JAVA_HOME}/bin:${JAVA_HOME}/sbin"
#RUN mkdir usr
WORKDIR /usr
RUN mkdir bie
RUN mkdir -p bie/lib
RUN mkdir -p bie/resources
ADD app.jar /usr/bie/
ADD lib/ /usr/bie/lib
ADD resources/ /usr/bie/resources
WORKDIR /usr/bie
ENTRYPOINT [ "java","-jar","-Dloader.path=.,resources,config,lib","app.jar" ]
后来把基础镜像from alpine 改为了 from centos 就没有问题。我不知道原因。因为我选择基础镜像alpine也是网上建议的。但是就不行。也就是在选择基础镜像上要慎重。我就着了道了,一天工作时间都浪费了呢。。。。MMP
镜像选择看这个大神的文章:https://blog.youkuaiyun.com/nklinsirui/article/details/80967677