dockerfile fix
This commit is contained in:
+8
-7
@@ -10,7 +10,7 @@ WORKDIR /build
|
|||||||
COPY ./matrix-engine ./matrix-engine
|
COPY ./matrix-engine ./matrix-engine
|
||||||
|
|
||||||
WORKDIR /build/matrix-engine
|
WORKDIR /build/matrix-engine
|
||||||
# КЭШИРУЕМ: Реестр Cargo и папку target. При повторном деплое компиляция будет мгновенной.
|
# КЭШИРУЕМ: Реестр Cargo и папку target.
|
||||||
RUN --mount=type=cache,target=/usr/local/cargo/registry \
|
RUN --mount=type=cache,target=/usr/local/cargo/registry \
|
||||||
--mount=type=cache,target=/build/matrix-engine/target \
|
--mount=type=cache,target=/build/matrix-engine/target \
|
||||||
wasm-pack build --target web --release
|
wasm-pack build --target web --release
|
||||||
@@ -20,7 +20,6 @@ FROM node:20-alpine AS deps
|
|||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
RUN npm install -g pnpm
|
RUN npm install -g pnpm
|
||||||
COPY package.json pnpm-lock.yaml* ./
|
COPY package.json pnpm-lock.yaml* ./
|
||||||
# КЭШИРУЕМ: Хранилище pnpm
|
|
||||||
RUN --mount=type=cache,target=/root/.local/share/pnpm/store \
|
RUN --mount=type=cache,target=/root/.local/share/pnpm/store \
|
||||||
pnpm install --frozen-lockfile
|
pnpm install --frozen-lockfile
|
||||||
|
|
||||||
@@ -31,17 +30,19 @@ RUN npm install -g pnpm
|
|||||||
COPY --from=deps /app/node_modules ./node_modules
|
COPY --from=deps /app/node_modules ./node_modules
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
# Копируем Wasm ДО билда Next.js
|
# Создаем директорию заранее
|
||||||
COPY --from=wasm-builder /build/matrix-engine/pkg/matrix_engine_bg.wasm ./public/wasm-matrix/
|
RUN mkdir -p ./public/wasm-matrix/
|
||||||
COPY --from=wasm-builder /build/matrix-engine/pkg/matrix_engine.js ./public/wasm-matrix/
|
|
||||||
|
|
||||||
# 👇 ДОБАВЬ ЭТУ СТРОКУ 👇
|
# Копируем ВЕСЬ контент из pkg (там matrix_engine.js, matrix_engine_bg.js и .wasm)
|
||||||
|
# Это критично, так как они зависят друг от друга
|
||||||
|
COPY --from=wasm-builder /build/matrix-engine/pkg/* ./public/wasm-matrix/
|
||||||
|
|
||||||
|
# Копируем сам воркер поверх (если он не попал в pkg ранее)
|
||||||
RUN cp matrix-engine/matrix_worker.js public/wasm-matrix/
|
RUN cp matrix-engine/matrix_worker.js public/wasm-matrix/
|
||||||
|
|
||||||
ENV NEXT_TELEMETRY_DISABLED=1
|
ENV NEXT_TELEMETRY_DISABLED=1
|
||||||
RUN pnpm run build
|
RUN pnpm run build
|
||||||
|
|
||||||
|
|
||||||
# --- Stage 3: Продакшен сервер ---
|
# --- Stage 3: Продакшен сервер ---
|
||||||
FROM node:20-alpine AS runner
|
FROM node:20-alpine AS runner
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|||||||
Reference in New Issue
Block a user