Switched dockerfile to more reasonable building + pnpm + cache
This commit is contained in:
		
							
								
								
									
										20
									
								
								Dockerfile
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								Dockerfile
									
									
									
									
									
								
							@@ -1,16 +1,20 @@
 | 
			
		||||
# Typescript Build
 | 
			
		||||
FROM registry.odit.services/hub/library/node:19.0.1-alpine3.16
 | 
			
		||||
FROM registry.odit.services/hub/library/node:19.0.1-alpine3.16 as build
 | 
			
		||||
ARG NPM_REGISTRY_URL=https://registry.npmjs.org
 | 
			
		||||
WORKDIR /app
 | 
			
		||||
 | 
			
		||||
COPY package.json ./
 | 
			
		||||
RUN npm i -g pnpm
 | 
			
		||||
RUN pnpm i
 | 
			
		||||
RUN npm config set registry $NPM_REGISTRY_URL && npm i -g pnpm@8
 | 
			
		||||
RUN mkdir /pnpm && pnpm config set store-dir /pnpm && pnpm i
 | 
			
		||||
 | 
			
		||||
COPY tsconfig.json ./
 | 
			
		||||
COPY src ./src
 | 
			
		||||
RUN pnpm run build
 | 
			
		||||
RUN pnpm run build \
 | 
			
		||||
    && rm -rf /app/node_modules \
 | 
			
		||||
    && pnpm i --production --prefer-offline
 | 
			
		||||
 | 
			
		||||
# final image
 | 
			
		||||
FROM registry.odit.services/hub/library/node:19.0.1-alpine3.16
 | 
			
		||||
COPY package.json ./
 | 
			
		||||
RUN npm i -g pnpm
 | 
			
		||||
RUN pnpm i --prod
 | 
			
		||||
COPY --from=0 /app/dist dist
 | 
			
		||||
COPY --from=build /app/dist dist
 | 
			
		||||
COPY --from=build /app/node_modules /app/node_modules
 | 
			
		||||
ENTRYPOINT ["node", "dist/app.js"]
 | 
			
		||||
		Reference in New Issue
	
	Block a user