Skip to content
Closed
Show file tree
Hide file tree
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
4 changes: 2 additions & 2 deletions infra/docker/Dockerfile.api
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# Usuário não-root, sem segredos na imagem (tudo por variável de ambiente).
# Aplica as migrations no start (idempotente) e sobe o servidor.
# ─────────────────────────────────────────────────────────────────────────────
FROM node:22-bookworm-slim AS build
FROM node:25-bookworm-slim AS build
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends openssl && rm -rf /var/lib/apt/lists/*
COPY package.json package-lock.json ./
Expand All @@ -19,7 +19,7 @@ RUN npm run build -w @subweb/protocol
COPY apps/api apps/api
RUN cd apps/api && npx prisma generate && npm run build

FROM node:22-bookworm-slim AS runtime
FROM node:25-bookworm-slim AS runtime
ENV NODE_ENV=production API_HOST=0.0.0.0 API_PORT=3460 HOME=/tmp
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends openssl curl && rm -rf /var/lib/apt/lists/*
Expand Down
4 changes: 2 additions & 2 deletions infra/docker/Dockerfile.controller
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
# socket do Docker é root — quem tem o socket já é root no host, então o
# isolamento real é: nenhuma porta exposta, rede interna, HMAC e argumentos fixos.
# ─────────────────────────────────────────────────────────────────────────────
FROM node:22-bookworm-slim AS build
FROM node:25-bookworm-slim AS build
WORKDIR /app
COPY package.json package-lock.json ./
COPY packages/protocol/package.json packages/protocol/package.json
Expand All @@ -26,7 +26,7 @@ RUN npm run build -w @subweb/controller \

FROM docker:27.5.1-cli AS dockercli

FROM node:22-bookworm-slim AS runtime
FROM node:25-bookworm-slim AS runtime
COPY --from=dockercli /usr/local/bin/docker /usr/local/bin/docker
ENV NODE_ENV=production CONTROLLER_HOST=0.0.0.0 CONTROLLER_PORT=3470 \
WORKER_SECCOMP_PROFILE=/app/seccomp-chromium.json WORKER_NETWORK=subweb_workers
Expand Down
4 changes: 2 additions & 2 deletions infra/docker/Dockerfile.edge
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# SubWebNavigator · Borda da rede dos workers: proxy de egress e relay.
# A mesma imagem roda os dois serviços (comandos diferentes no compose).
# ─────────────────────────────────────────────────────────────────────────────
FROM node:22-bookworm-slim AS build
FROM node:25-bookworm-slim AS build
WORKDIR /app
COPY package.json package-lock.json ./
COPY packages/protocol/package.json packages/protocol/package.json
Expand All @@ -19,7 +19,7 @@ RUN npm run build -w @subweb/edge \
&& cp -r node_modules/ws node_modules/ipaddr.js /out/node_modules/ \
&& cp -r apps/edge/dist /out/dist

FROM node:22-bookworm-slim AS runtime
FROM node:25-bookworm-slim AS runtime
ENV NODE_ENV=production
WORKDIR /app
COPY --from=build /out/ /app/
Expand Down
2 changes: 1 addition & 1 deletion infra/docker/Dockerfile.web
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# ─────────────────────────────────────────────────────────────────────────────
# SubWebNavigator · Web (Vite → nginx). Build context: raiz do monorepo.
# ─────────────────────────────────────────────────────────────────────────────
FROM node:22-bookworm-slim AS build
FROM node:25-bookworm-slim AS build
WORKDIR /app
COPY package.json package-lock.json ./
COPY packages/protocol/package.json packages/protocol/package.json
Expand Down
4 changes: 2 additions & 2 deletions infra/docker/Dockerfile.worker
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# Roda como UID 1000, rootfs somente leitura, sandbox do Chromium LIGADO.
# Build context: raiz do monorepo.
# ─────────────────────────────────────────────────────────────────────────────
FROM node:22-bookworm-slim AS build
FROM node:25-bookworm-slim AS build
WORKDIR /app
COPY package.json package-lock.json ./
COPY packages/protocol/package.json packages/protocol/package.json
Expand All @@ -24,7 +24,7 @@ RUN npm run build -w @subweb/protocol && npm run build -w @subweb/worker \
&& cp -r packages/protocol/package.json packages/protocol/dist /out/node_modules/@subweb/protocol/ \
&& cp -r apps/worker/dist /out/dist

FROM node:22-bookworm-slim AS runtime
FROM node:25-bookworm-slim AS runtime
LABEL swn.image=worker
RUN apt-get update \
&& apt-get install -y --no-install-recommends chromium xvfb dumb-init ca-certificates \
Expand Down
Loading