- Added complete Next.js single-page website for Vocalinux - Configured static export with proper GitHub Pages deployment - Added GitHub Actions workflow for automated deployment to gh-pages branch - Configured custom domain (vocalinux.com) with CNAME file - Added comprehensive build script with npm support - Responsive design with dark/light theme toggle - Modern UI components with Tailwind CSS and shadcn/ui - Proper SEO metadata and accessibility features
39 lines
1.1 KiB
Docker
39 lines
1.1 KiB
Docker
# Base image for development dependencies
|
|
FROM oven/bun:1 AS base
|
|
|
|
# No need for pnpm installation since we'll use bun
|
|
|
|
# Install common dependencies that are likely to be used in Next.js projects
|
|
FROM base AS deps
|
|
WORKDIR /app
|
|
|
|
# Copy only package files for efficient caching
|
|
COPY . .
|
|
|
|
# Install dependencies
|
|
RUN bun install
|
|
|
|
# Install git and configure it
|
|
RUN apt-get update -y && apt-get install -y git && \
|
|
cd /app && \
|
|
git init && \
|
|
git config --system --add safe.directory /app && \
|
|
git config --system user.name "creatr-agent" && \
|
|
git config --system user.email "creatr-agent@getcreatr.com" && \
|
|
git add . && \
|
|
git commit -m "Initial Commit"
|
|
|
|
# Create a separate stage for exporting
|
|
FROM alpine:latest AS export-stage
|
|
|
|
# Create tar archive of the source code (excluding node_modules)
|
|
COPY --from=deps /app /source
|
|
RUN cd /source && \
|
|
tar -czf /source.tar.gz --exclude=node_modules .
|
|
|
|
# Copy node_modules to a separate location for volume mounting
|
|
COPY --from=deps /app/node_modules /deps/node_modules
|
|
|
|
# Clean up the source directory and extract the tar
|
|
RUN rm -rf /source/* && \
|
|
mv /source.tar.gz /source/ |