diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..77dc757 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,18 @@ +FROM node:20-alpine as build + +WORKDIR /app + +COPY package*.json ./ +RUN npm ci + +COPY . . +RUN npm run build + +FROM nginx:alpine + +COPY --from=build /app/dist /usr/share/nginx/html +COPY nginx.conf /etc/nginx/conf.d/default.conf + +EXPOSE 80 + +CMD ["nginx", "-g", "daemon off;"] diff --git a/docker-bake.hcl b/docker-bake.hcl new file mode 100644 index 0000000..2a9b924 --- /dev/null +++ b/docker-bake.hcl @@ -0,0 +1,33 @@ +variable "REGISTRY_USER" { + default = "" +} + +variable "IMAGE_NAME" { + default = "cv-app" +} + +variable "TAG" { + default = "latest" +} + +variable "VERSION" { + default = "" +} + +group "default" { + targets = ["cv-app"] +} + +target "cv-app" { + context = "." + platforms = ["linux/amd64", "linux/arm64"] + tags = [ + notequal("",VERSION) ? "${REGISTRY_USER}/${IMAGE_NAME}:${VERSION}" : "", + notequal("",VERSION) ? "${REGISTRY_USER}/${IMAGE_NAME}:latest" : "", + notequal("",VERSION) ? "ghcr.io/${REGISTRY_USER}/${IMAGE_NAME}:${VERSION}" : "", + notequal("",VERSION) ? "ghcr.io/${REGISTRY_USER}/${IMAGE_NAME}:latest" : "", + ] + args = { + NODE_VERSION = "20" + } +}