我正在创建一个Dockerfile。我已将Python的解压缩protobuf-3.3.0文件夹包含在与Dockerfile相同的目录中。 protobuf文件夹中有一个名为configure
的二进制文件,完全适用于我的(非Docker)主机。
我的Dockerfile中有以下几行:
WORKDIR /protobuf-3.3.0
RUN ./configure && make && make install
但是,这会导致以下致命错误:
Step 4/13 : WORKDIR protobuf-3.3.0
---> 077ec08916d7
Removing intermediate container 50647f3aa6d7
Step 5/13 : RUN ./configure && make && make install
---> Running in 2d6f8446cdd9
/bin/sh: 1: ./configure: not found
为什么?!?根据{{3}},我在Dockerfile中的内容是完全正确的。我也试过版本this answer,但结果是一样的。
答案 0 :(得分:2)
您当前文件夹中的内容称为上下文。您的泊坞窗容器可以复制和使用它,但它并不意味着它在您的容器中。
您需要将其复制到dockerfile
中WORKDIR /protobuf-3.3.0
COPY ./protobuf-3.3.0 /protobuf-3.3.0
RUN ./configure && make && make install
WORKDIR
仅指定当前目录在容器内的内容,但不会从上下文中复制该文件夹