37 lines
752 B
Docker
Executable File
37 lines
752 B
Docker
Executable File
FROM node:22-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
# Install git (needed for cloning Quartz)
|
|
RUN apk add --no-cache git
|
|
|
|
# Update npm to latest version
|
|
RUN npm install -g npm@latest
|
|
|
|
# Clone Quartz repository
|
|
RUN git clone https://github.com/jackyzha0/quartz.git quartz-repo
|
|
|
|
# Move into Quartz directory
|
|
WORKDIR /app/quartz-repo
|
|
|
|
# Install Quartz dependencies
|
|
RUN npm install
|
|
|
|
# Install serve for static file serving
|
|
RUN npm install -g serve
|
|
|
|
# Create directories for content and output
|
|
RUN mkdir -p /app/content /app/public
|
|
|
|
# Copy entrypoint script
|
|
COPY entrypoint.sh /app/entrypoint.sh
|
|
RUN chmod +x /app/entrypoint.sh
|
|
|
|
# Expose port
|
|
EXPOSE 8080
|
|
|
|
# Set working directory back to app root
|
|
WORKDIR /app
|
|
|
|
CMD ["/app/entrypoint.sh"]
|