![](/img/trans.png)
[英]Nodemon not reloading files on change in docker with express
[英]Docker or nodemon: reloading issue
Docker 容器中的 nodemon 是否有任何原因停止重新加載? 在項目進行到一半之前,我在重新加載方面沒有任何問題。 現在我必須docker-compose down
和docker-compose up
以查看任何更改(純文本、js 或樣式)。 我沒有收到任何錯誤。 我嘗試將 package.json 文件更改為"start": "nodemon --legacy-watch"
,但我仍然遇到問題。
package.json
{
"name": "mongoose-express-docker",
"version": "1.0.0",
"description": "Simple learning environment.",
"main": "app.js",
"scripts": {
"start:express": "node ./app.js",
"start": "nodemon --legacy-watch",
"test": "echo \"Error: no test specified\" && exit 1"
},
"dependencies": {
"express": "^4.17.1",
"method-override": "^3.0.0",
"mongoose": "^5.12.7",
"morgan": "^1.10.0",
"ejs": "^3.1.6",
"ejs-mate": "^3.0.0"
},
"devDependencies": {
"nodemon": "^2.0.7"
}
}
docker-compose.yml
version: "3.4"
services:
nodejs:
image: nodejs_mongo_docker
build: .
user: node
environment:
NODE_ENV: production
ports:
- 3000:3000
volumes:
- .:/usr/src/app
links:
- mongodb
mongodb:
image: mongo:4.0.24
ports:
- 27017:27017
volumes:
- data:/data/db
command: mongod --port 27017 --bind_ip_all
volumes:
data:
Dockerfile
FROM node:14.16.1-alpine3.10
ENV NODE_ENV production
WORKDIR /usr/src/app
RUN npm install nodemon -g
COPY ["package*.json", "./"]
RUN npm install --production --silent && mv node_modules ../
COPY . .
EXPOSE 3000
CMD npm start
資源: https://github.com/remy/nodemon#application-isnt-restarting
應用程序未重新加載
“..網絡環境(例如運行 nodemon 讀取已安裝驅動器的容器)...”
我需要在我的項目中添加一個 nodemon 配置。 有兩種添加方法,一種是制作一個名為 nodemonConfig.json 的單獨文件,第二種選擇是將"nodemonConfig": {}
添加到我的package.json
文件中。
經過幾次試驗和錯誤,我發現這種組合有效。
package.json
{
"name": "mongoose-express-docker",
"version": "1.0.0",
"description": "Simple learning environment.",
"main": "app.js",
"scripts": {
"start:express": "node ./app.js",
"start": "nodemon -L ./app.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"nodemonConfig": {
"restartable": "rs",
"ignore": [
".git",
"node_modules/**/node_modules"
],
"verbose": true,
"execMap": {
"js": "node --harmony"
},
"legacyWatch": true,
"ext": "ejs, js, css"
},
"keywords": [
"docker",
"ejs",
"express",
"mongoose",
"nodemon"
],
"author": "Melissa Kipp",
"license": "ISC",
"dependencies": {
"bootstrap": "^5.0.1",
"bootstrap-icons": "^1.5.0",
"ejs": "^3.1.6",
"ejs-mate": "^3.0.0",
"express": "^4.17.1",
"joi": "^17.4.0",
"method-override": "^3.0.0",
"mongoose": "^5.12.7",
"morgan": "^1.10.0"
},
"devDependencies": {
"nodemon": "^2.0.7"
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.