Minimal Node.js Express API
Goal
Create a minimal Express API server and run it locally or in Docker.
Setup
npm init
npm install express
Server
Create server.js:
// ./server.js
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send({ message: "I'm here"});
});
app.listen(3000, () => console.log('Listening on port 3000!'));
Run it:
node server.js
Test it:
curl localhost:3000
Docker
Create Dockerfile:
## ./Dockerfile
FROM node
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]
Build and run:
docker build -t node-server .
docker run -p 3000:3000 node-server
Test it:
curl localhost:3000