Files
land-vue-frontend/Dockerfile

20 lines
488 B
Docker

FROM node:22-slim AS base
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable
COPY . /app
WORKDIR /app
FROM base AS build
ARG CI=true
ARG VITE_BACKEND_DOMAIN
ARG VITE_LASTFM_API
ENV VITE_BACKEND_DOMAIN=$VITE_BACKEND_DOMAIN
ENV VITE_LASTFM_API=$VITE_LASTFM_API
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile
RUN pnpm run build
FROM caddy:alpine
COPY Caddyfile /etc/caddy/Caddyfile
COPY --from=build /app/dist /usr/share/caddy
EXPOSE 80