我在projectA
下有一个sbt项目home/demo/projectA
,我的Dockerfile
由于某种原因居住在/home/demo/
中,我不希望它位于projectA
内
所以层次结构看起来像这样
家庭/演示
在这里我试图在映像构建过程中运行sbt
命令,这是我的Dockerfile的内容
FROM hseeberger/scala-sbt:11.0.2_2.12.8_1.2.8 as stripecommon
MAINTAINER sara <sarawaheed3191@gmail.com>
WORKDIR /aa
RUN \
. /home/demo/projectA sbt
构建图片时出现此错误
:~/home/demo$ docker build -t testapp .
Sending build context to Docker daemon 1.297GB
Step 1/4 : FROM hseeberger/scala-sbt:11.0.2_2.12.8_1.2.8 as stripecommon
---> 349a7e4f4029
Step 2/4 : MAINTAINER sara <sarawaheed3191@gmail.com>
---> Using cache
---> 8603662d3730
Step 3/4 : WORKDIR /aa
---> Using cache
---> f07ec5bb4d34
Step 4/4 : RUN . /home/demo/projectA sbt
---> Running in 7509ee45f622
/bin/sh: 1: .: Can't open /home/demo/projectA
The command '/bin/sh -c . /home/demo/projectA sbt' returned a non-zero code: 2
什么是正确的方法,我还是Docker帮助的新手
答案 0 :(得分:0)
您需要确保projectA存在于容器中。因此,您可以从github上选择代码,或者使用COPY或ADD命令将其复制。之后,您可以使用sbt来构建它。