- pnpm 11 (brew/corepack) errors 'ERR_PNPM_IGNORED_BUILDS: esbuild ignored' even with onlyBuiltDependencies; npm ci handles esbuild cleanly - Moreminimore-astroreal uses npm ci + npm run build (proven on EasyPanel) - Add esbuild as direct dep, generate package-lock.json, remove pnpm files - Dockerfile: npm ci -> npm run build -> node server.js (port 4321) - Verified: npm ci + npm run build produce dist (40 pages) successfully
27 lines
1.2 KiB
Docker
27 lines
1.2 KiB
Docker
# ── มิตซูชัยพร — Astro + Express (static) ─────────────────────────
|
|
# Build: npm run build (astro) → Runtime: node server.js (port 4321)
|
|
#
|
|
# Uses npm (like moreminimore-astroreal which deploys on EasyPanel).
|
|
# esbuild builds cleanly with npm ci (no pnpm build-script approval issues).
|
|
#
|
|
# Env: PORT (default 4321), GA_ID, FORM_EMAIL, GMAP_LAT/LNG (see .env.example)
|
|
|
|
FROM node:22-bookworm-slim
|
|
|
|
WORKDIR /app
|
|
|
|
# ── Dependencies ──────────────────────────────────────────────────
|
|
COPY package.json package-lock.json ./
|
|
RUN npm ci
|
|
|
|
# ── Source + Build ───────────────────────────────────────────────
|
|
COPY astro.config.mjs tsconfig.json ./
|
|
COPY src/ src/
|
|
COPY public/ public/
|
|
RUN npm run build
|
|
|
|
# ── Runtime ──────────────────────────────────────────────────────
|
|
COPY server.js ./
|
|
EXPOSE 4321
|
|
CMD ["node", "server.js"]
|