commit
695a6705fc
7 changed files with 58 additions and 31 deletions
@ -0,0 +1,2 @@ |
|||||||
|
**/node_modules |
||||||
|
**/dist |
@ -0,0 +1,11 @@ |
|||||||
|
FROM node:latest as build-stage |
||||||
|
WORKDIR /app |
||||||
|
COPY package*.json ./ |
||||||
|
RUN npm install |
||||||
|
COPY ./ . |
||||||
|
RUN npm run build |
||||||
|
|
||||||
|
FROM nginx as production-stage |
||||||
|
RUN mkdir /app |
||||||
|
COPY --from=build-stage /app/dist /app |
||||||
|
COPY nginx.conf /etc/nginx/nginx.conf |
@ -0,0 +1,30 @@ |
|||||||
|
user nginx; |
||||||
|
worker_processes 1; |
||||||
|
error_log /var/log/nginx/error.log warn; |
||||||
|
pid /var/run/nginx.pid; |
||||||
|
events { |
||||||
|
worker_connections 1024; |
||||||
|
} |
||||||
|
http { |
||||||
|
include /etc/nginx/mime.types; |
||||||
|
default_type application/octet-stream; |
||||||
|
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' |
||||||
|
'$status $body_bytes_sent "$http_referer" ' |
||||||
|
'"$http_user_agent" "$http_x_forwarded_for"'; |
||||||
|
access_log /var/log/nginx/access.log main; |
||||||
|
sendfile on; |
||||||
|
keepalive_timeout 65; |
||||||
|
server { |
||||||
|
listen 80; |
||||||
|
server_name localhost; |
||||||
|
location / { |
||||||
|
root /app; |
||||||
|
index index.html; |
||||||
|
try_files $uri $uri/ /index.html; |
||||||
|
} |
||||||
|
error_page 500 502 503 504 /50x.html; |
||||||
|
location = /50x.html { |
||||||
|
root /usr/share/nginx/html; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -1,23 +0,0 @@ |
|||||||
FROM node:lts-alpine |
|
||||||
|
|
||||||
# where the files live |
|
||||||
WORKDIR /app |
|
||||||
|
|
||||||
# get the sauce |
|
||||||
COPY /client/src/ /app/src/ |
|
||||||
|
|
||||||
# add `/app/node_modules/.bin` to $PATH |
|
||||||
ENV PATH /app/node_modules/.bin:$PATH |
|
||||||
|
|
||||||
# make sure the packages are the same |
|
||||||
COPY /client/package-lock.json /app/package.json |
|
||||||
|
|
||||||
# install and cache app dependencies |
|
||||||
COPY /client/package.json /app/package.json |
|
||||||
RUN npm install |
|
||||||
|
|
||||||
# start app |
|
||||||
CMD ["npm", "run", "serve"] |
|
||||||
|
|
||||||
# allow to be peeked inside |
|
||||||
EXPOSE 8080 |
|
@ -0,0 +1,2 @@ |
|||||||
|
**/node_modules |
||||||
|
**/dist |
@ -0,0 +1,13 @@ |
|||||||
|
FROM node:latest |
||||||
|
|
||||||
|
WORKDIR /usr/src/server |
||||||
|
|
||||||
|
COPY package*.json ./ |
||||||
|
|
||||||
|
RUN npm ci --only=production |
||||||
|
|
||||||
|
COPY . . |
||||||
|
|
||||||
|
CMD [ "node", "index.js" ] |
||||||
|
|
||||||
|
EXPOSE 5000 |
Loading…
Reference in new issue