Run docker-compose up --build
.
Make changes to index.js and see the server restart.
node_modules |
node_modules |
version: '3' | |
services: | |
app: | |
build: | |
context: . | |
dockerfile: Dockerfile.dev | |
volumes: | |
- ./:/usr/src/app | |
- /usr/src/app/node_modules # Remove this if you have pure JS dependencies | |
ports: | |
- "3000:3000" |
FROM node:16-alpine | |
# Create app directory | |
RUN mkdir -p /usr/src/app | |
WORKDIR /usr/src/app | |
# Install dependencies | |
COPY package.json . | |
RUN npm install | |
# Bundle app source | |
COPY index.js ./ | |
# Exports | |
EXPOSE 3000 | |
CMD [ "npm", "run", "start.dev" ] |
'use strict' | |
const express = require('express') | |
const { PORT = '3000' } = process.env | |
const app = express() | |
app.use((req, res, next) => { | |
res.send('Hello Jack') | |
}) | |
app.listen(PORT) |
{ | |
"main": "index.js", | |
"scripts": { | |
"start": "node index", | |
"start.dev": "nodemon" | |
}, | |
"dependencies": { | |
"express": "^4.17.2" | |
}, | |
"devDependencies": { | |
"nodemon": "^2.0.15" | |
} | |
} |