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