Все, я пытаюсь постоянно копировать файлы с моего хоста на изображение, чтобы эти файлы были доступны с каждым контейнером, запущенным на основе этого изображения. Работает на debian wheezy 64bit как виртуальный бокс.Ошибка в инструкции Dockerfile COPY?
Dockerfile довольно прост (установка октава изображение):
FROM debian:jessie
MAINTAINER GG_Python <[redacted]@gmail.com>
RUN apt-get update
RUN apt-get update
RUN apt-get install -y octave octave-image octave-missing-functions octave-nan octave-statistics
RUN mkdir /octave
RUN mkdir /octave/libs
RUN mkdir /octave/libs/jsonlab
COPY ~/octave/jsonlab/loadjson.m /octave/libs/jsonlab/.
Я получаю следующую трассировку после выдачи команды сборки: docker build -t octave .
Sending build context to Docker daemon 423.9 kB
Sending build context to Docker daemon
Step 0 : FROM debian:jessie
---> 58052b122b60
Step 1 : MAINTAINER GG_Python <[..]@gmail.com>
---> Using cache
---> 90d2dd2f7ee8
Step 2 : RUN apt-get update
---> Using cache
---> 4c72c25cd829
Step 3 : RUN apt-get update
---> Using cache
---> b52f0bcb9f86
Step 4 : RUN apt-get install -y octave octave-image octave-missing-functions octave-nan octave-statistics
---> Using cache
---> f0637ab96d5e
Step 5 : RUN mkdir /octave
---> Using cache
---> a2d278b2819b
Step 6 : RUN mkdir /octave/libs
---> Using cache
---> 65efbbe01c99
Step 7 : RUN mkdir /octave/libs/jsonlab
---> Using cache
---> e41b80901266
Step 8 : COPY ~/octave/jsonlab/loadjson.m /octave/libs/jsonlab/.
INFO[0000] ~/octave/jsonlab/loadjson.m: no such file or directory
Docker абсолютно отказывается скопировать этот файл от хоста до изображения. Излишне говорить, что файл loadjson.m есть (отображение cat), все мои попытки изменить путь (относительный, абсолютный и т. Д.) Не удались. Любые советы, почему эта простая задача проблематична?
С MKDIR вы можете использовать опцию -p, чтобы создать их все на одном дыхании: MkDir -p/октава/ЛИЭС/jsonlab – dalore
А также первые 3 линии должны быть объединены в один RUN – dalore