У меня есть простой Dockerfile, который делает git clone
, а затем cc
внутри недавно клонированного каталога. К сожалению, cc
завершается с ошибкой, что файл. c не может быть найден.
FROM gcc:4.9.4
CMD mdkir -p /usr/src \
cd /usr/src \
git clone https://github.com/<repo>/helloworld.git
WORKDIR /usr/src/helloworld
RUN cc -o helloworld -03 -march=native -lm helloworld.c
ENTRYPOINT["./helloworld"]
Похоже, ошибка указывает на то, что либо клон не произошел, либо я нахожусь не в том каталоге когда я запускаю cc
.
$ docker build -t helloworld ./
Sending build context to Docker daemon 2.048 kB
Step 1/5 : FROM gcc:4.9.4
---> 1b3de68a7ff8
Step 2/5 : CMD mkdir -p /usr/src cd /usr/src git clone https://github.com/<repo>/helloworld.git /usr/src/helloworld
---> Using cache
---> b46c44b63d60
Step 3/5 : WORKDIR /usr/src/helloworld
---> Using cache
---> 11f02812a9e6
Step 4/5 : RUN cc -o helloworld -O3 -march=native -lm helloworld.c
---> Running in 784960f375d7
cc: error: helloworld.c: No such file or directory
The command '/bin/sh -c cc -o helloworld -O3 -march=native -lm helloworld.c' returned a non-zero code: 1
Выполнение каждого шага внутри docker run --rm -it gcc:4.9.4 /bin/bash
работает нормально. Какое предположение я делаю неправильно?