App
|_conf
|_conf.d
|_default.conf
|_src
|_package.json
|_Dockerfile
|_docker-compose.yml
|_webpack.config.js
|_dist
|bundle.js
Dockerfile
# build environment
FROM node:9.6.1 as builder
RUN npm install webpack -g
RUN mkdir /usr/src/app
WORKDIR /usr/src/app
ENV PATH /usr/src/app/node_modules/.bin:$PATH
COPY package.json /usr/src/app/package.json
RUN npm install --silent
COPY . /usr/src/app
RUN npm run build
# production environment
FROM nginx:1.13.9-alpine
RUN rm -rf /etc/nginx/conf.d
COPY conf /etc/nginx
COPY --from=builder /usr/src/app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
docker-compose.yml
version: '2'
services:
custom-component:
container_name: custom-component
build:
context: .
dockerfile: Dockerfile
volumes:
- '.:/usr/src/app'
- '/usr/src/app/node_modules'
ports:
- '80:80'
Access app: http://localhost/bundle.js
No comments:
Post a Comment