![](/img/trans.png)
[英]Error: ENOENT, no such file or directory '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript/app/models
[英]cannot replace to directory /var/lib/docker/overlay2/if2ip5okvavl8u6jpdtpczuog/merged/app/node_modules/@ampproject/remapping with file
在我的 Windows 機器上,我正在嘗試使用以下 Dockerfile 構建容器化的 node.js 應用程序:
# use latest version of nodejs
FROM node:lts-alpine
# install aurelia-cli to build the app & http-server to serve static contents
RUN npm i -g http-server
RUN npm i -g aurelia-cli
# set working directory to app
# henceforth all commands will run inside this folder
WORKDIR /app
# copy package.json related files first and install all required dependencies
COPY package*.json ./
RUN npm install
# copy the rest of the files and folders & install dependencies
COPY . ./
RUN npm run build
# by default http-server will serve contents on port 8080
# so we expose this port to host machine
EXPOSE 8080
CMD [ "http-server" , "dist" ]
但是, docker build .
在Copy . ./
Copy . ./
. 消息cannot replace to directory /var/lib/docker/overlay2/if2ip5okvavl8u6jpdtpczuog/merged/app/node_modules/@ampproject/remapping with file
。
我需要做什么來構建我的容器映像?
將node_modules
添加到與 Dockerfile 位於同一目錄中的.dockerignore
文件中,如下所述:(h/t David Maze )。
不太優雅,只需刪除項目的node_modules
目錄,然后重新運行 docker docker build
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.