I choose using serve package
to serve index.html than using multistage container (docker & reverse proxy). First you can clone CoreUI React.js from my repository.
I just added Dockerfile & docker-compose.yml. Here is contain of Dockerfile
FROM node:10-alpine
MAINTAINER ipang
#make a new folder /coreui
RUN mkdir /coreui
#use it as work folder
WORKDIR /coreui
ENV PATH /coreui/node_modules/.bin:$PATH
#copy package.json to install CoreUI necessary package
COPY package.json /coreui/package.json
#change date time to Jakarta
RUN apk add tzdata
#set timezone +7
RUN export TZ="Asia/Jakarta"
RUN apk add --no-cache tzdata \
&& ln -sf /usr/share/zoneinfo/Asia/Jakarta /etc/localtime \
&& echo "Asia/Jakarta" > /etc/timezone
RUN npm install
COPY . /coreui
#update old package
RUN npm audit fix
#make a production setup
RUN npm run build
EXPOSE 668
CMD ["serve", "-s", "demo/dist", "-p", "668"]
After your clone done, run docker-compose up

docker-compose Successfull

CoreUI React.jsw
It’s lightweight because it use production setup, you can make a comparasion with development stage by remove npm run build
& change end line to CMD ["npm","start"]