Mi nodemon no se reinicia después de un cambio de archivo mecanografiado.
Actualmente estoy usando lo siguiente para ejecutar y compilar mis cambios:
"dev": "nodemon -e ts,json --exec \"npm run compile\"", "compile": "tsc && node src/index.js"debería detectar los cambios y volver a compilar, sin embargo, no lo es.
Se está ejecutando a través de un contenedor docker vinculado con un volumen, se debe observar el código en el volumen.
docker-compose
version: '2' services: api: build: context: ./api ports: ["5000:5000"] environment: - NODE_ENV=productionla anulación:
version: '2' services: api: command: yarn run dev volumes: - ./api/src:/usr/workspace/api/src environment: - NODE_ENV=devLa API tiene el siguiente dockerfile
FROM node:latest # Install yarn RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ && echo "deb http://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && apt-get update && apt-get clean # Set working dir and copy contents of our images to that dir RUN mkdir -p /usr/workspace/api && cd /usr/workspace/api # install dependencies COPY *.json /usr/workspace/api/ WORKDIR /usr/workspace/api # npm install will check NODE_ENV if its production if will not install dev dependencies RUN npm install --silent && npm install -g nodemon pm2 typescript --silent # copy sources COPY ./src ./src # create env file with the port ENV PORT 8100 EXPOSE $PORT CMD ["pm2-docker", "src/process.json"]como puede ver, con la anulación ejecuto el entorno de desarrollo en lugar de la puesta en escena
Intenté convertir la opción de reloj en verdadera en mi tsconfig , sin embargo, el código no se vuelve a ejecutar. cuando cambio las opciones de nodemon para ver los archivos js también funciona, sin embargo, luego se reconstruye constantemente porque detecta que los archivos js cambian cuando se compila.
alguna opinión?
He solucionado este problema agregando el interruptor -L a nodemon. esto aparentemente usa el reloj heredado que funcionó en el contenedor docker
"dev": "nodemon -L -e ts,json --exec \"npm run compile\"",