19 lines
		
	
	
		
			525 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
		
			525 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
FROM node:21-slim AS base
 | 
						|
ENV PNPM_HOME="/pnpm"
 | 
						|
ENV PATH="$PNPM_HOME:$PATH"
 | 
						|
RUN corepack enable
 | 
						|
COPY . /app
 | 
						|
WORKDIR /app
 | 
						|
 | 
						|
FROM base AS prod-deps
 | 
						|
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile
 | 
						|
 | 
						|
FROM base AS build
 | 
						|
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile
 | 
						|
RUN pnpm run build
 | 
						|
 | 
						|
FROM base
 | 
						|
COPY --from=prod-deps /app/node_modules /app/node_modules
 | 
						|
COPY --from=build /app/dist /app/dist
 | 
						|
EXPOSE 8000
 | 
						|
CMD [ "pnpm", "preview", "--host", "--port", "8000" ] |