我正在使用Docker和fig来构建NodeJS开发环境。
当我使用nodemon来监视server.js文件时,更改server.js不会重新启动服务器。
CMD ["nodemon", "/nodeapp/server.js"]
但是当我从nodemon改用supervisor之后,它就可以工作了!
CMD ["supervisor", "/nodeapp/server.js"]
有人知道问题出在哪里吗?
以下是更多信息:
我的 fig 文件夹结构:
app/server.js
package.json
node_modules/
fig.yml
Dockerfile
fig.yml:
nodejs:
build: .
ports:
- "8080:8080"
Dockerfile:
RUN apt-get update --fix-missing
RUN rm /bin/sh && ln -s /bin/bash /bin/sh
# NVM
RUN curl -sL https://deb.nodesource.com/setup | sudo bash - && \
apt-get install -y nodejs
VOLUME ./app:/nodeapp
WORKDIR /nodeapp
RUN rm /bin/sh && ln -s /bin/bash /bin/sh && \
npm install -g nodemon mocha supervisor
CMD ["nodemon", "/nodeapp/server.js"]
Server.js:(来自NodeJS网站的示例代码)
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello 12\n');
}).listen(8080);
console.log('Server running at http://127.0.0.1:8080/');
-L
简写,但这对我也起作用。 - Jeremy Hamm