내 Dockerfile에는 다음과 같은 'COPY'문이 있습니다.
# Copy app code
COPY /srv/visitor /srv/visitor
내 호스트 시스템의 "/ srv / visitor"디렉토리에는 실제로 내 소스 코드가 있습니다.
[root@V12 visitor]# ls /srv/visitor/
Dockerfile package.json visitor.js
이제이 Dockerfile을 사용하여 이미지를 만들려고하면 "COPY"가 발생하는 단계에서 정지됩니다.
Step 10 : COPY /srv/visitor /srv/visitor
INFO[0155] srv/visitor: no such file or directory
그것은 그러한 디렉토리는 없지만 분명히 존재한다고 말합니다.
어떤 아이디어?
업데이트 1 :
빌드 컨텍스트를 이해하는 방식으로 내가 틀렸다는 것이 나에게 지적되었다. 제안은 "COPY"문을 다음과 같이 변경했습니다.
COPY . /srv/visitor
문제는 내가 이런 식으로했고 빌드 프로세스가 다음 단계에서 중단되었다는 것입니다.
RUN npm install
"no package.json file found"란에 명확하게 존재하는 내용이 있습니다.
업데이트 2 :
Dockerfile에서 다음과 같이 변경해 보았습니다.
COPY source /srv/visitor/
npm을 실행하려고 할 때 중지되었습니다.
Step 12 : RUN npm install
---> Running in ae5e2a993e11
npm ERR! install Couldn't read dependencies
npm ERR! Linux 3.18.5-1-ARCH
npm ERR! argv "/usr/bin/node" "/usr/sbin/npm" "install"
npm ERR! node v0.10.36
npm ERR! npm v2.5.0
npm ERR! path /package.json
npm ERR! code ENOPACKAGEJSON
npm ERR! errno 34
npm 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.log
INFO[0171] The command [/bin/sh -c npm install] returned a non-zero code: 34
복사가 수행 되었습니까? 그렇다면 npm에서 package.json을 찾을 수없는 이유는 무엇입니까?