Skip to content

Commit 8c716d2

Browse files
committed
[Arvion] Security feat: support node 23
1 parent e8d4723 commit 8c716d2

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

Dockerfile

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,14 @@
33
ARG PUSH_SENTRY_RELEASE="false"
44

55
# Build step #1: build the React front end
6-
FROM node:22-alpine AS build-step
6+
FROM node:23-alpine AS build-step
77
ARG SENTRY_RELEASE=""
88
WORKDIR /app
99
ENV PATH=/app/node_modules/.bin:$PATH
1010
COPY craco.config.js package.json package-lock.json tsconfig.json tsconfig.paths.json .env.production* ./
1111
COPY ./src ./src
1212
COPY ./public ./public
1313
COPY ./config ./config
14-
1514
RUN npm install
1615
RUN touch .env.production
1716
ENV REACT_APP_SENTRY_RELEASE=$SENTRY_RELEASE
@@ -31,17 +30,23 @@ RUN sentry-cli releases finalize ${SENTRY_RELEASE}
3130
RUN touch sentry
3231

3332
# Build step #3: build the API with the client as static files
34-
FROM python:3.13 AS false
33+
FROM python:3.13-alpine AS api-build
3534
ARG SENTRY_RELEASE=""
3635
WORKDIR /app
37-
COPY --from=build-step /app/build ./build
3836

37+
# Install pipx and ensure the path is set correctly
38+
RUN apk add --no-cache python3 py3-pip py3-virtualenv
39+
RUN pip install --no-cache-dir pipx && python3 -m pipx ensurepath
40+
41+
COPY --from=build-step /app/build ./build
3942
RUN rm ./build/static/js/*.map
4043
RUN mkdir ./api && mkdir ./migrations
4144
COPY requirements.txt api/ ./api/
4245
COPY migrations/ ./migrations/
4346
COPY ./config ./config
44-
RUN pip install -r ./api/requirements.txt
47+
48+
# Use pipx to install dependencies
49+
RUN pipx install -r ./api/requirements.txt
4550

4651
# Build an image that includes the optional sentry release push build step
4752
FROM false AS true

0 commit comments

Comments
 (0)