File size: 538 Bytes
20f108c | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | FROM node:22-alpine
WORKDIR /app
# Install dependencies needed by tools
# which: for external binary detection
# curl, wget, git: for web-fetch, recon, install tools
# ca-certificates: for HTTPS
RUN apk add --no-cache which curl wget git ca-certificates
# Copy manifest + install TS deps (devDep for type-checking)
COPY package.json package-lock.json* ./
RUN npm ci --omit=dev || npm i --omit=dev
# Copy source
COPY . .
# Build TypeScript stubs
RUN npm run build
# Default entry: REPL mode
ENTRYPOINT ["node", "phantom.mjs"]
CMD []
|