Something went wrong. Try again.
FlockOff is a mass-block tool for the Atmosphere flockoff.app
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142# ── Stage 1: Install dependencies ────────────────────────────────────────────FROM node:24-alpine AS depsWORKDIR /appCOPY package.json package-lock.json ./RUN npm ci
# ── Stage 2: Build ────────────────────────────────────────────────────────────FROM node:24-alpine AS builderWORKDIR /appCOPY --from=deps /app/node_modules ./node_modulesCOPY . .ENV NEXT_TELEMETRY_DISABLED=1# Dummy build-time values — real values injected at runtime via Railway env varsENV NEXT_PUBLIC_APP_URL=https://flockoff.appRUN npm run build
# ── Stage 3: Production runner ────────────────────────────────────────────────FROM node:24-alpine AS runnerWORKDIR /appENV NODE_ENV=productionENV NEXT_TELEMETRY_DISABLED=1
# Non-root user for securityRUN addgroup --system --gid 1001 nodejsRUN adduser --system --uid 1001 nextjs
# Static assetsCOPY --from=builder /app/public ./public
# Standalone server + compiled outputCOPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static
USER nextjs
# Railway injects PORT at runtime — don't hardcode it here# EXPOSE is informational only; Railway routes to whatever PORT the app listens onEXPOSE 3000ENV HOSTNAME=0.0.0.0
CMD ["node", "server.js"]