diff --git a/ docker/Dockerfile b/ docker/Dockerfile new file mode 100644 index 0000000..92a7783 --- /dev/null +++ b/ docker/Dockerfile @@ -0,0 +1,19 @@ +# docker buildx build --platform=linux/amd64 -f docker/Dockerfile . -t hrms-git.chin.in.th/bma-hrms/hrms-checkin:0.1 + +# Build Stage +FROM node:lts-alpine AS build-stage +WORKDIR /app +COPY package*.json ./ +RUN npm install +COPY ./ . +RUN npm run build + +# Production Stage +FROM nginx:stable-alpine AS production-stage +RUN mkdir /app +COPY --from=build-stage /app/dist /app +COPY docker/nginx.conf /etc/nginx/nginx.conf +COPY docker/entrypoint.sh /usr/local/bin/entrypoint.sh +RUN chmod u+x /usr/local/bin/entrypoint.sh +ENTRYPOINT ["/usr/local/bin/entrypoint.sh"] +CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/entrypoint.sh b/ docker/entrypoint.sh similarity index 61% rename from entrypoint.sh rename to docker/entrypoint.sh index 7a63f92..ea4c9ca 100644 --- a/entrypoint.sh +++ b/ docker/entrypoint.sh @@ -8,11 +8,7 @@ for file in $ROOT_DIR/assets/app.*.js* $ROOT_DIR/js/app.*.js* $ROOT_DIR/index.ht do echo "Processing $file ..."; - sed -i 's|VITE_REALM_KEYCLOAK|'${VITE_REALM_KEYCLOAK}'|g' $file - sed -i 's|VITE_CLIENTID_KEYCLOAK|'${VITE_CLIENTID_KEYCLOAK}'|g' $file - sed -i 's|VITE_URL_KEYCLOAK|'${VITE_URL_KEYCLOAK}'|g' $file sed -i 's|VITE_API_URI_CONFIG|'${VITE_API_URI_CONFIG}'|g' $file - sed -i 's|VITE_CLIENTSECRET_KEYCLOAK|'${VITE_CLIENTSECRET_KEYCLOAK}'|g' $file sed -i 's|VITE_URL_SSO|'${VITE_URL_SSO}'|g' $file done diff --git a/nginx.conf b/ docker/nginx.conf similarity index 100% rename from nginx.conf rename to docker/nginx.conf diff --git a/.env.production b/.env.production index 9d7a178..3569104 100644 --- a/.env.production +++ b/.env.production @@ -1,11 +1,4 @@ -VITE_REALM_KEYCLOAK=VITE_REALM_KEYCLOAK -VITE_CLIENTID_KEYCLOAK=VITE_CLIENTID_KEYCLOAK -VITE_URL_KEYCLOAK=VITE_URL_KEYCLOAK VITE_API_URI_CONFIG=VITE_API_URI_CONFIG -VITE_CLIENTSECRET_KEYCLOAK: VITE_CLIENTSECRET_KEYCLOAK VITE_URL_SSO: VITE_URL_SSO -# VITE_REALM_KEYCLOAK: "bma-ehr" -# VITE_CLIENTID_KEYCLOAK: "bma-ehr-exam-vue3" -# VITE_URL_KEYCLOAK: "https://id.frappet.synology.me/" # VITE_API_URI_CONFIG: "https://bma-ehr.frappet.synology.me/api/v1" \ No newline at end of file diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 6f2553e..0000000 --- a/Dockerfile +++ /dev/null @@ -1,21 +0,0 @@ -# docker build . -t docker.frappet.com/demo/fe:latest -FROM node:lts 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 - -COPY entrypoint.sh /usr/local/bin/entrypoint.sh -RUN chmod u+x /usr/local/bin/entrypoint.sh - - -ENTRYPOINT ["/usr/local/bin/entrypoint.sh"] -CMD ["nginx", "-g", "daemon off;"]