Di Dockerfile saya, saya memiliki pernyataan 'salin" berikut:
# Copy app codeCOPY /srv/visitor /srv/visitor
Seharusnya tidak perlu dikatakan bahwa di sistem host saya, di bawah direktori "/ srv / visitor", memang ada kode sumber saya:
[root@V12 visitor]# ls /srv/visitor/Dockerfile package.json visitor.js
Sekarang, ketika saya mencoba membuat gambar menggunakan Dockerfile ini hang pada langkah ketika "salin" seharusnya terjadi:
Step 10 : COPY /srv/visitor /srv/visitorINFO[0155] srv/visitor: no such file or directory
Dikatakan bahwa tidak ada direktori seperti itu, tetapi jelas ada.
Ada ide?
Pembaruan 1:
Telah ditunjukkan kepada saya bahwa saya salah, dalam cara saya memahami konteks pembangunan. Saran tersebut sama dengan mengubah pernyataan "salin" menjadi ini:
COPY . /srv/visitor
Masalahnya adalah saya melakukannya dengan cara ini, dan proses pembuatan dihentikan pada langkah berikutnya:
RUN npm install
Dikatakan sesuatu di sepanjang baris " tidak ada paket.file json ditemukan", ketika jelas ada satu.
Pembaruan 2:
Saya mencoba menjalankannya dengan perubahan ini di Dockerfile:
COPY source /srv/visitor/
Itu berhenti ketika mencoba menjalankan 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
Jadi, apakah salinannya sudah dilakukan? Jika ya, mengapa npm tidak dapat menemukan paket.json?