parent
57294ffeff
commit
d5fecb0044
@ -0,0 +1,16 @@ |
|||||||
|
server { |
||||||
|
|
||||||
|
listen 80; |
||||||
|
|
||||||
|
location / { |
||||||
|
root /usr/share/nginx/html; |
||||||
|
index index.html index.htm; |
||||||
|
try_files $uri /index.html =404; |
||||||
|
} |
||||||
|
|
||||||
|
error_page 500 502 503 504 /50x.html; |
||||||
|
|
||||||
|
location = /50x.html { |
||||||
|
root /usr/share/nginx/html; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,58 @@ |
|||||||
|
# syntax=docker/dockerfile:1.4 |
||||||
|
|
||||||
|
# 1. For build React app |
||||||
|
FROM node:lts AS development |
||||||
|
|
||||||
|
# Set working directory |
||||||
|
WORKDIR /app |
||||||
|
|
||||||
|
# |
||||||
|
COPY package.json /app/package.json |
||||||
|
COPY package-lock.json /app/package-lock.json |
||||||
|
|
||||||
|
# Same as npm install |
||||||
|
RUN npm ci |
||||||
|
|
||||||
|
COPY . /app |
||||||
|
|
||||||
|
ENV CI=true |
||||||
|
ENV PORT=3003 |
||||||
|
|
||||||
|
CMD [ "npm", "start" ] |
||||||
|
|
||||||
|
FROM development AS build |
||||||
|
|
||||||
|
RUN npm run build |
||||||
|
|
||||||
|
|
||||||
|
FROM development as dev-envs |
||||||
|
RUN <<EOF |
||||||
|
apt-get update |
||||||
|
apt-get install -y --no-install-recommends git |
||||||
|
EOF |
||||||
|
|
||||||
|
RUN <<EOF |
||||||
|
useradd -s /bin/bash -m vscode |
||||||
|
groupadd docker |
||||||
|
usermod -aG docker vscode |
||||||
|
EOF |
||||||
|
# install Docker tools (cli, buildx, compose) |
||||||
|
COPY --from=gloursdocker/docker / / |
||||||
|
CMD [ "npm", "start" ] |
||||||
|
|
||||||
|
# 2. For Nginx setup |
||||||
|
FROM nginx:alpine |
||||||
|
|
||||||
|
# Copy config nginx |
||||||
|
COPY --from=build /app/.nginx/nginx.conf /etc/nginx/conf.d/default.conf |
||||||
|
|
||||||
|
WORKDIR /usr/share/nginx/html |
||||||
|
|
||||||
|
# Remove default nginx static assets |
||||||
|
RUN rm -rf ./* |
||||||
|
|
||||||
|
# Copy static assets from builder stage |
||||||
|
COPY --from=build /app/build . |
||||||
|
|
||||||
|
# Containers run nginx with global directives and daemon off |
||||||
|
ENTRYPOINT ["nginx", "-g", "daemon off;"] |
@ -0,0 +1,7 @@ |
|||||||
|
services: |
||||||
|
frontend: |
||||||
|
build: |
||||||
|
context: . |
||||||
|
container_name: frontend |
||||||
|
ports: |
||||||
|
- "3003:3003" |
Loading…
Reference in new issue