Olá,
Para ser sincero, mexi pouco com o node, mas para subir o container fiz os seguintes passos no Ubuntu:
- Criei um diretório na minha home chamado teste e lá criei o arquivo package.json com o conteúdo abaixo:
{
"name": "docker_web_app",
"version": "1.0.0",
"description": "teste",
"author": "Teste <teste@teste.com>",
"main": "server.js",
"scripts": {
"start": "node server.js"
},
"dependencies": {
"express": "^4.16.1"
}
}
- Depois ainda no diretório teste criei o arquivo server.js
'use strict';
const express = require('express');
// Constants
const PORT = 3000;
const HOST = '0.0.0.0';
// App
const app = express();
app.get('/', (req, res) => {
res.send('Hello world\n');
});
app.listen(PORT, HOST);
console.log(`Running on http://${HOST}:${PORT}`);
- No diretório teste instalei o express
npm install express
- Depois rodei o comando:
docker run -p 80:3000 -v "[caminho diretório teste com os arquivos acima]:/var/www" -w "/var/www" node npm start
Ao colocar no browser localhost
vi a mensagem do Hello World do arquivo server.js