0

我已经创建了我的 sbt 项目的自定义映像,这里是 docker 文件

FROM hseeberger/scala-sbt:11.0.2_2.12.8_1.2.8

MAINTAINER name <email>


RUN echo "==> fetch all sbt jars from Maven repo..."       && \
    echo "==> [CAUTION] this may take several minutes!!!"  && \
    sbt publishLocal


WORKDIR /test-commons


# Define default command.
ENTRYPOINT ["sbt publishLocal"]
CMD ["sbt publishLocal"]

然后我建立它

docker build .

docker ps返回

REPOSITORY                     TAG                   IMAGE ID            CREATED             SIZE
test-commons              v1                    8adba9557f57        12 minutes ago      1.05GB

并且docker run test-commons:v1 正在给

docker: Error response from daemon: OCI runtime create failed: container_linux.go:344: starting container process caused "exec: \"sbt publishLocal\": executable file not found in $PATH": unknown.
ERRO[0007] error waiting for container: context canceled 

我是这方面的初学者,请指导我在这里缺少什么

4

1 回答 1

0

使用 justCMD就足够了,删除多余的ENTRYPOINT语句并尝试 -

FROM hseeberger/scala-sbt:11.0.2_2.12.8_1.2.8

MAINTAINER name <email>


RUN echo "==> fetch all sbt jars from Maven repo..."       && \
    echo "==> [CAUTION] this may take several minutes!!!"  && \
    sbt publishLocal


WORKDIR /test-commons


CMD ["sbt", "publishLocal"]
于 2019-04-30T12:50:35.923 回答