apps/gateway/Dockerfile
Metadata
- Purpose: Source artifact in the anchor-msp system.
- Domain:
applications - Language:
docker - Bytes: 1195
- Lines: 28
- Content hash (short):
aef8edf0 - Source (start): apps/gateway/Dockerfile:1
- Source (end): apps/gateway/Dockerfile:28
Indexed Symbols
No indexed functions/methods detected in this file.
Markdown Headings (if applicable)
No markdown headings detected.
Source Preview
FROM node:22-alpine AS deps
WORKDIR /app
COPY package.json pnpm-workspace.yaml turbo.json tsconfig.base.json ./
COPY apps/gateway/package.json apps/gateway/package.json
COPY packages/contracts/package.json packages/contracts/package.json
RUN corepack enable && pnpm install --filter @anchor/gateway... --filter @anchor/contracts
FROM node:22-alpine AS builder
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .
RUN corepack enable && pnpm install --filter @anchor/gateway... --filter @anchor/contracts
RUN corepack enable && pnpm build --filter @anchor/contracts --filter @anchor/gateway
FROM node:22-alpine AS runner
WORKDIR /app
ENV NODE_ENV=production
RUN addgroup -g 10001 -S anchor && adduser -S -D -H -u 10001 -G anchor anchor
COPY --from=builder /app/apps/gateway/dist ./apps/gateway/dist
COPY --from=builder /app/apps/gateway/package.json ./apps/gateway/package.json
COPY --from=builder /app/apps/gateway/node_modules ./apps/gateway/node_modules
COPY --from=builder /app/packages/contracts ./packages/contracts
COPY --from=builder /app/node_modules ./node_modules
RUN chown -R anchor:anchor /app
USER anchor