25 lines
		
	
	
		
			421 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
		
		
			
		
	
	
			25 lines
		
	
	
		
			421 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
| 
								 | 
							
								ARG NODE_VERSION=22.14.0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								FROM node:${NODE_VERSION}-alpine  AS development
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								WORKDIR /app
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								RUN --mount=type=cache,target=/root/.npm
							 | 
						||
| 
								 | 
							
								COPY package.json .
							 | 
						||
| 
								 | 
							
								COPY package-lock.json .
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								RUN npm install
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COPY . .
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								RUN npm run build
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								FROM nginx:alpine AS production
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COPY --from=development /app/dist /usr/share/nginx/html
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COPY nginx/nginx.conf /etc/nginx/conf.d/default.conf
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								EXPOSE 80
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ENTRYPOINT [ "nginx", "-g", "daemon off;" ]
							 |