This repository has been archived on 2024-10-29. You can view files and clone it, but cannot push or open issues or pull requests.
Files
.gitea
API
Frontend
src
.eslintrc.json
.gitignore
Dockerfile
README.md
bun.lockb
next.config.mjs
package.json
postcss.config.mjs
tailwind.config.ts
tsconfig.json
Mod
.gitignore
LICENSE
docker-compose.yml
renovate.json
beatsaber-scoretracker/Frontend/Dockerfile
2024-08-01 06:29:39 +01:00

42 lines
1.0 KiB
Docker

FROM imbios/bun-node AS base
# Install dependencies
FROM base AS depends
WORKDIR /usr/src/app
COPY package.json* bun.lockb* ./
RUN bun install --frozen-lockfile --quiet
# Build the app
FROM base AS builder
WORKDIR /usr/src/app
COPY --from=depends /usr/src/app/node_modules ./node_modules
COPY . .
ENV NEXT_TELEMETRY_DISABLED 1
RUN bun run build
# Run the app
FROM base AS runner
WORKDIR /usr/src/app
RUN addgroup --system --gid 1007 nextjs
RUN adduser --system --uid 1007 nextjs
RUN mkdir .next
RUN chown nextjs:nextjs .next
COPY --from=builder --chown=nextjs:nextjs /usr/src/app/node_modules ./node_modules
COPY --from=builder --chown=nextjs:nextjs /usr/src/app/.next ./.next
COPY --from=builder --chown=nextjs:nextjs /usr/src/app/next.config.mjs ./next.config.mjs
COPY --from=builder --chown=nextjs:nextjs /usr/src/app/package.json ./package.json
ENV NODE_ENV production
# Exposting on port 80 so we can
# access via a reverse proxy for Dokku
ENV HOSTNAME "0.0.0.0"
EXPOSE 80
ENV PORT 80
USER nextjs
CMD ["bun", "start"]