Docker と fig を使用して NodeJS dev-env を構築しています。
nodemon を使用して server.js を監視していますが、server.js を変更してもサーバーは再起動しません。
CMD ["nodemon", "/nodeapp/server.js"]
しかし、ノードモンからスーパーバイザーに変更したところ、うまくいきました!
CMD ["supervisor", "/nodeapp/server.js"]
問題がどこにあるか誰か知っていますか?
詳細は以下のとおりです。
私の図のフォルダ構造:
app/server.js
package.json
node_modules/
fig.yml
Dockerfile
図.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 Web サイトのサンプル コード)
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/');