Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 9 additions & 8 deletions packages/server/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -42,21 +42,22 @@ FROM node:20-alpine AS production

WORKDIR /app
ENV NODE_ENV=production
ENV NODE_PATH=/app/node_modules

# Runtime deps only
RUN apk add --no-cache openssl

# Copy node_modules from builder (includes mediasoup native bindings)
# Copy node_modules from builder (includes mediasoup native bindings and workspace symlinks)
COPY --from=builder /app/node_modules ./node_modules

# Copy built dist files from builder
COPY --from=builder /app/packages/shared/dist ./packages/shared/dist
COPY --from=builder /app/packages/server/dist ./packages/server/dist
# Copy entire packages directory from builder (preserves workspace structure)
COPY --from=builder /app/packages ./packages

# Copy package files for pnpm resolution
COPY package.json pnpm-lock.yaml* pnpm-workspace.yaml tsconfig.base.json ./
COPY packages/shared ./packages/shared
COPY packages/server ./packages/server
# Copy root workspace files
COPY --from=builder /app/package.json ./package.json
COPY --from=builder /app/pnpm-lock.yaml* ./pnpm-lock.yaml*
COPY --from=builder /app/pnpm-workspace.yaml ./pnpm-workspace.yaml
COPY --from=builder /app/tsconfig.base.json ./tsconfig.base.json

# Create non-root user
RUN addgroup -S mediasoup && adduser -S mediasoup -G mediasoup
Expand Down