当docker中的js文件中的文本发生变化时,nodemon没有观察到。

问题描述 投票:0回答:1
package.json

{
  "name": "nodemon-docker-test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start:express": "node ./index.js",
    "start": "nodemon"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "express": "^4.17.1"
  },
  "devDependencies": {
    "nodemon": "^1.19.2"
  }
}


Dockerfile

FROM node:slim

WORKDIR /app
COPY package*.json ./

RUN apt-get update
RUN npm install

COPY . /app
# -or-
# COPY . .

EXPOSE 1337
CMD ["npm", "start"]



docker-compose.yml

version: '3.1'

services:
    node:
        build: .
        volumes:
        - ./:/app
        ports: 
            - 1337:1337
        working_dir: /app
        expose:
        - "1337"
  1. docker-compose up - 首先,我用这个命令来构建node web应用。
  2. docker run --rm -it -p 1337:1337tcp nodemon-docker-test_node:last。 - 然后我用这个命令运行

我不明白我在这里做错了什么,server.js在docker中运行命令后与nodemon一起运行,但它没有观察我在server.js中做的改变,或者它在做了改变后没有重新启动服务器,如果我做错了什么,请纠正我。

node.js docker docker-compose nodemon
1个回答
0
投票

你需要告诉nodemon要运行什么文件,就像这样。

"start": "nodemon ./index.js"
© www.soinside.com 2019 - 2024. All rights reserved.