Creating a Docker Container to deploy to a prod env

I’m having some problems with building my application through Jenkins and running the container on a extrernal tomcat.

Dockerfile:

FROM node:10.16.3
RUN ls -al
WORKDIR /app
COPY /package/repo/package.json /app/package.json
RUN npm install
COPY /package/repo /app
RUN npm run build

EXPOSE 8080
CMD ["npm", "start]

npm start calls node server.js

server.js:

const express = require('express');
const app = express();
const port = 8080;

app.get('/', (req, res) => {
  res.send('Hello World!');
});


app.listen(port, () => {
  console.log(`Example app listening on port ${port}!`);
  console.log(__dirname+'/client/build/index.html');

});

app.listen(port, () => console.log(`Example app listening on port ${port}!`));

docker build -t reacttest .
docker run reacttest

I’m trying to access the container using localhost:8080, however, whenever I access that port, I’m getting error not found. Is there a step I’m missing. Sorry, i’m very new to docker.

Source: StackOverflow