2 changed files with 46 additions and 0 deletions
			
			
		@ -0,0 +1,42 @@ | 
				
			|||
# Build stage | 
				
			|||
FROM node:20-alpine AS builder | 
				
			|||
 | 
				
			|||
# Install build dependencies | 
				
			|||
 | 
				
			|||
RUN apk add --no-cache \ | 
				
			|||
    python3 \ | 
				
			|||
    py3-pip \ | 
				
			|||
    py3-setuptools \ | 
				
			|||
    make \ | 
				
			|||
    g++ \ | 
				
			|||
    gcc | 
				
			|||
 | 
				
			|||
# Set working directory | 
				
			|||
WORKDIR /app | 
				
			|||
 | 
				
			|||
# Copy package files | 
				
			|||
COPY package*.json ./ | 
				
			|||
 | 
				
			|||
# Install dependencies | 
				
			|||
RUN npm ci | 
				
			|||
 | 
				
			|||
# Copy source code | 
				
			|||
COPY . . | 
				
			|||
 | 
				
			|||
# Build the application | 
				
			|||
RUN npm run build:web | 
				
			|||
 | 
				
			|||
# Production stage | 
				
			|||
FROM nginx:alpine | 
				
			|||
 | 
				
			|||
# Copy built assets from builder stage | 
				
			|||
COPY --from=builder /app/dist /usr/share/nginx/html | 
				
			|||
 | 
				
			|||
# Copy nginx configuration if needed | 
				
			|||
# COPY nginx.conf /etc/nginx/conf.d/default.conf | 
				
			|||
 | 
				
			|||
# Expose port 80 | 
				
			|||
EXPOSE 80 | 
				
			|||
 | 
				
			|||
# Start nginx | 
				
			|||
CMD ["nginx", "-g", "daemon off;"]  | 
				
			|||
@ -0,0 +1,4 @@ | 
				
			|||
#!/bin/bash | 
				
			|||
export IMAGENAME="$(basename $PWD):1.0" | 
				
			|||
 | 
				
			|||
docker build . --network=host -t $IMAGENAME --no-cache | 
				
			|||
					Loading…
					
					
				
		Reference in new issue