Add: Dockerfile & nginx config for container prod setup
This commit is contained in:
parent
ccc8eb7264
commit
839aace50c
2 changed files with 52 additions and 0 deletions
31
Dockerfile
Normal file
31
Dockerfile
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
### STAGE 1: Build ###
|
||||||
|
FROM node:lts-alpine AS build
|
||||||
|
|
||||||
|
#### make the 'app' folder the current working directory
|
||||||
|
WORKDIR /usr/src/app
|
||||||
|
|
||||||
|
#### copy both 'package.json' and 'package-lock.json' (if available)
|
||||||
|
COPY package*.json ./
|
||||||
|
|
||||||
|
#### install angular cli
|
||||||
|
RUN npm install -g @angular/cli
|
||||||
|
|
||||||
|
#### install project dependencies
|
||||||
|
RUN npm install
|
||||||
|
|
||||||
|
#### copy things
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
#### generate build --prod
|
||||||
|
RUN npm run build --prod
|
||||||
|
|
||||||
|
### STAGE 2: Run ###
|
||||||
|
FROM nginxinc/nginx-unprivileged
|
||||||
|
|
||||||
|
#### copy nginx conf
|
||||||
|
COPY ./nginx.conf /etc/nginx/conf.d/default.conf
|
||||||
|
|
||||||
|
#### copy artifact build from the 'build environment'
|
||||||
|
COPY --from=build /usr/src/app/dist/bookproject /usr/share/nginx/html
|
||||||
|
|
||||||
|
CMD ["nginx", "-g", "daemon off;"]
|
21
nginx.conf
Normal file
21
nginx.conf
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
server {
|
||||||
|
listen 0.0.0.0:8080;
|
||||||
|
listen [::]:8080;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
|
||||||
|
gzip on;
|
||||||
|
gzip_comp_level 6;
|
||||||
|
gzip_vary on;
|
||||||
|
gzip_min_length 1000;
|
||||||
|
gzip_proxied any;
|
||||||
|
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
|
||||||
|
gzip_buffers 16 8k;
|
||||||
|
gunzip on;
|
||||||
|
client_max_body_size 256M;
|
||||||
|
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ /index.html =404;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue