build: update Dockerfile for multi-stage build process

This commit is contained in:
Jan Gleytenhoover 2025-01-19 19:57:32 +01:00
parent 9b2df4992f
commit 3403dd4556
Signed by: jank
GPG key ID: 50620ADD22CD330B

View file

@ -1,11 +1,31 @@
FROM node:lts
# syntax=docker/dockerfile:1.4
WORKDIR /usr/src/app
FROM --platform=$BUILDPLATFORM node:lts-slim as builder
COPY . /usr/src/app
RUN mkdir /project
WORKDIR /project
RUN npm install -g @angular/cli
RUN npm install
EXPOSE 4200
CMD ["sh", "-c", "ng serve --configuration=${ANGULAR_CONFIG:-development}"]
COPY package.json package-lock.json ./
RUN npm ci
COPY . .
CMD ["ng", "serve", "--host", "0.0.0.0"]
FROM builder 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 ["ng", "serve", "--host", "0.0.0.0"]