Created
January 23, 2025 15:59
-
-
Save Sama-004/f1c54b2264caddb39f74d6321ed1fed8 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM oven/bun:alpine AS base | |
# Stage 1: Install dependencies | |
FROM base AS deps | |
WORKDIR /app | |
COPY package.json bun.lockb ./ | |
RUN bun install --frozen-lockfile | |
# Stage 2: Build the application | |
FROM base AS builder | |
WORKDIR /app | |
COPY --from=deps /app/node_modules ./node_modules | |
COPY . . | |
ARG NEXT_PUBLIC_ADMIN_EMAIL | |
ARG NEXT_PUBLIC_ADMIN_PASSWORD | |
ARG NEXT_PUBLIC_BASE_URL | |
ARG BETTER_AUTH_SECRET | |
ARG BETTER_AUTH_URL | |
ARG DRAGONFLY_PASSWORD | |
ARG DRAGONFLY_HOST | |
ARG DRAGONFLY_PORT | |
ENV NEXT_PUBLIC_ADMIN_EMAIL=${NEXT_PUBLIC_ADMIN_EMAIL} | |
ENV NEXT_PUBLIC_ADMIN_PASSWORD=${NEXT_PUBLIC_ADMIN_PASSWORD} | |
ENV NEXT_PUBLIC_BASE_URL=${NEXT_PUBLIC_BASE_URL} | |
ENV BETTER_AUTH_SECRET=${BETTER_AUTH_SECRET} | |
ENV BETTER_AUTH_URL=${BETTER_AUTH_URL} | |
ENV DRAGONFLY_PASSWORD=${DRAGONFLY_PASSWORD} | |
ENV DRAGONFLY_HOST=${DRAGONFLY_HOST} | |
ENV DRAGONFLY_PORT=${DRAGONFLY_PORT} | |
RUN bun run build | |
# Stage 3: Production server | |
FROM base AS runner | |
WORKDIR /app | |
ENV NODE_ENV=production | |
ENV NEXT_PUBLIC_ADMIN_EMAIL=${NEXT_PUBLIC_ADMIN_EMAIL} | |
ENV NEXT_PUBLIC_ADMIN_PASSWORD=${NEXT_PUBLIC_ADMIN_PASSWORD} | |
ENV NEXT_PUBLIC_BASE_URL=${NEXT_PUBLIC_BASE_URL} | |
ENV BETTER_AUTH_SECRET=${BETTER_AUTH_SECRET} | |
ENV BETTER_AUTH_URL=${BETTER_AUTH_URL} | |
ENV DRAGONFLY_PASSWORD=${DRAGONFLY_PASSWORD} | |
ENV DRAGONFLY_HOST=${DRAGONFLY_HOST} | |
ENV DRAGONFLY_PORT=${DRAGONFLY_PORT} | |
COPY --from=builder /app/public ./public | |
COPY --from=builder /app/.next/standalone ./ | |
COPY --from=builder /app/.next/static ./.next/static | |
ENV PORT 3000 | |
ENV HOSTNAME "0.0.0.0" | |
EXPOSE 3000 | |
CMD ["bun", "run", "server.js"] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment