27 lines
561 B
Docker
27 lines
561 B
Docker
|
|
FROM node:22-alpine AS builder
|
||
|
|
|
||
|
|
# Set working directory
|
||
|
|
WORKDIR /app
|
||
|
|
|
||
|
|
# Copy the book source files
|
||
|
|
COPY book /app/book
|
||
|
|
|
||
|
|
# Set the working directory to the book folder
|
||
|
|
WORKDIR /app/book
|
||
|
|
|
||
|
|
# Install honkit globally and build the book
|
||
|
|
RUN npm install -g honkit && \
|
||
|
|
honkit build
|
||
|
|
|
||
|
|
# Final Stage: Serve with Nginx
|
||
|
|
FROM nginx:alpine
|
||
|
|
|
||
|
|
# Copy the rendered HTML from the builder stage
|
||
|
|
COPY --from=builder /app/book/_book /usr/share/nginx/html
|
||
|
|
|
||
|
|
# Expose port 80
|
||
|
|
EXPOSE 80
|
||
|
|
|
||
|
|
# Use the default Nginx configuration to serve static files
|
||
|
|
CMD ["nginx", "-g", "daemon off;"]
|