В моем файле Dockerfile у меня есть следующий оператор "КОПИРОВАТЬ":
# Copy app codeCOPY /srv/visitor /srv/visitor
Само собой разумеется, что в моей хост-системе, в каталоге "/srv /visitor", действительно есть мой исходный код:
[root@V12 visitor]# ls /srv/visitor/Dockerfile package.json visitor.js
Теперь, когда я пытаюсь создать образ с помощью этого файла Dockerfile, он зависает на шаге, когда должно произойти "КОПИРОВАНИЕ":
Step 10 : COPY /srv/visitor /srv/visitorINFO[0155] srv/visitor: no such file or directory
В нем говорится, что такого каталога нет, но он явно есть.
Есть какие-нибудь идеи?
ОБНОВЛЕНИЕ 1:
Мне было указано, что я ошибался в том, как я понимал контекст сборки. Предложение сводилось к изменению инструкции "КОПИРОВАТЬ" на эту:
COPY . /srv/visitor
Проблема в том, что у меня все было именно так, и процесс сборки остановился на самом следующем шаге:
RUN npm install
В нем говорилось что-то вроде "файл package.json не найден", хотя он явно есть.
ОБНОВЛЕНИЕ 2:
Я попытался запустить его с этим изменением в файле Dockerfile:
COPY source /srv/visitor/
Он остановился при попытке запустить npm:
Step 12 : RUN npm install ---> Running in ae5e2a993e11npm ERR! install Couldn't read dependenciesnpm ERR! Linux 3.18.5-1-ARCHnpm ERR! argv "/usr/bin/node" "/usr/sbin/npm" "install"npm ERR! node v0.10.36npm ERR! npm v2.5.0npm ERR! path /package.jsonnpm ERR! code ENOPACKAGEJSONnpm ERR! errno 34npm ERR! package.json ENOENT, open '/package.json'npm ERR! package.json This is most likely not a problem with npm itself.npm ERR! package.json npm can't find a package.json file in your current directory.npm ERR! Please include the following file with any support request:npm ERR! /npm-debug.logINFO[0171] The command [/bin/sh -c npm install] returned a non-zero code: 34
Итак, была ли выполнена копия? Если да, то почему npm не может найти package.json?