Files
blog/Dockerfile
T

29 lines
467 B
Docker

FROM node:22-alpine
WORKDIR /app
# Dynamic build arguments & environment variables
ARG SITE_DOMAIN
ARG SITE_URL
ARG PORT=8080
ENV SITE_DOMAIN=$SITE_DOMAIN
ENV SITE_URL=$SITE_URL
ENV PORT=$PORT
ENV NODE_ENV=production
# Install dependencies
COPY package*.json ./
RUN npm ci
# Copy application source files
COPY . .
# Build static production assets
RUN npm run build
# Expose web server port dynamically
EXPOSE ${PORT}
# Serve site with npm
CMD ["npm", "start"]