[英]Nodemon not installed after docker build image
我有一個節點應用程序的圖像。 在 package.json 我有 nodemon。 我想通過更新主機源來運行容器,其中nodemon
將在主機 src 中進行熱重載。 所以我正在使用綁定安裝。
來自節點應用程序的package.json
。
{
"name": "backend",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "nodemon app.js"
},
"author": "MOI",
"license": "ISC",
"dependencies": {
"body-parser": "^1.19.0",
"express": "^4.17.1",
"mongoose": "^5.10.3",
"morgan": "^1.10.0"
},
"devDependencies": {
"nodemon": "^2.0.4"
}
}
Dockerfile
FROM node
WORKDIR /app
COPY package.json .
RUN npm install
COPY . .
EXPOSE 80
CMD ["npm", "start"]
然后我用這個運行容器,當我檢查日志時,我看不到nodemon
正在運行。 幾乎就像它根本沒有安裝一樣。 有什么想法可以解決這個問題嗎?
docker run --name goals-backend -v /Users/path/for/bind/mount/backend:/app \
-v logs:/app/logs -v /app/node_modules -d --rm \
-p 80:80 --network goals-net goals-node
您在 /app 上的綁定“隱藏”了圖像中“/app”中的所有內容,並將其替換為主機上 /Users/path/for/bind/mount/backend 的內容。 與 /app/node_modules 上的卷相同,盡管因為這是一個卷而不是綁定掛載,所以 /app/node_modules 的內容將在第一次創建卷時復制到卷中。
在沒有卷映射的情況下運行它以確保映像按原樣工作
docker run --name goals-backend -d --rm -p 80:80 --network goals-net goals-node
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.