Updated to use Node 24 and Debian Trixie

Signed-off-by: Andre Wanlin <awanlin@spotify.com>
This commit is contained in:
Andre Wanlin
2025-12-22 11:25:48 -06:00
parent ae31b31664
commit f1fe6fe90d
7 changed files with 16 additions and 11 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/create-app': patch
---
Updated Dockerfile to use Node 24 and Debian Trixie
+4 -4
View File
@@ -53,7 +53,7 @@ Once the host build is complete, we are ready to build our image. The following
`Dockerfile` is included when creating a new app with `@backstage/create-app`:
```dockerfile
FROM node:22-bookworm-slim
FROM node:22-trixie-slim
# Set Python interpreter for `node-gyp` to use
ENV PYTHON=/usr/bin/python3
@@ -178,7 +178,7 @@ the repo root:
```dockerfile
# Stage 1 - Create yarn install skeleton layer
FROM node:22-bookworm-slim AS packages
FROM node:22-trixie-slim AS packages
WORKDIR /app
COPY backstage.json package.json yarn.lock ./
@@ -193,7 +193,7 @@ COPY plugins plugins
RUN find packages \! -name "package.json" -mindepth 2 -maxdepth 2 -exec rm -rf {} \+
# Stage 2 - Install dependencies and build packages
FROM node:22-bookworm-slim AS build
FROM node:22-trixie-slim AS build
# Set Python interpreter for `node-gyp` to use
ENV PYTHON=/usr/bin/python3
@@ -231,7 +231,7 @@ RUN mkdir packages/backend/dist/skeleton packages/backend/dist/bundle \
&& tar xzf packages/backend/dist/bundle.tar.gz -C packages/backend/dist/bundle
# Stage 3 - Build the actual backend image and install production dependencies
FROM node:22-bookworm-slim
FROM node:22-trixie-slim
# Set Python interpreter for `node-gyp` to use
ENV PYTHON=/usr/bin/python3
+3 -3
View File
@@ -129,13 +129,13 @@ You can run Postgres in a Docker container, this is great for local development
First we need to pull down the container image, we'll use Postgres 17, check out the [Postgres Version Policy](../../overview/versioning-policy.md#postgresql-releases) to learn which versions are supported.
```shell
docker pull postgres:17.0-bookworm
docker pull postgres:17.0-trixie
```
Then we just need to start up the container.
```shell
docker run -d --name postgres --restart=always -p 5432:5432 -e POSTGRES_PASSWORD=<secret> postgres:17.0-bookworm
docker run -d --name postgres --restart=always -p 5432:5432 -e POSTGRES_PASSWORD=<secret> postgres:17.0-trixie
```
This will run Postgres in the background for you, but remember to start it up again when you reboot your system.
@@ -149,7 +149,7 @@ version: '4'
services:
postgres:
image: postgres:17.0-bookworm
image: postgres:17.0-trixie
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: <secret>
+1 -1
View File
@@ -417,7 +417,7 @@ The following is an example of a `Dockerfile` that can be used to package the
output of building a package with role `'backend'` into an image:
```Dockerfile
FROM node:20-bookworm-slim
FROM node:24-trixie-slim
WORKDIR /app
COPY yarn.lock package.json packages/backend/dist/skeleton.tar.gz ./
+1 -1
View File
@@ -9,7 +9,7 @@
#
# Once the commands have been run, you can build the image using `yarn build-image`
FROM node:20-bookworm-slim
FROM node:24-trixie-slim
# Install sqlite3 dependencies. You can skip this if you don't use sqlite3 in the image,
# in which case you should also move better-sqlite3 to "devDependencies" in package.json.
@@ -12,7 +12,7 @@
# Alternatively, there is also a multi-stage Dockerfile documented here:
# https://backstage.io/docs/deployment/docker#multi-stage-build
FROM node:22-bookworm-slim
FROM node:24-trixie-slim
# Set Python interpreter for `node-gyp` to use
ENV PYTHON=/usr/bin/python3
@@ -12,7 +12,7 @@
# Alternatively, there is also a multi-stage Dockerfile documented here:
# https://backstage.io/docs/deployment/docker#multi-stage-build
FROM node:22-bookworm-slim
FROM node:24-trixie-slim
# Set Python interpreter for `node-gyp` to use
ENV PYTHON=/usr/bin/python3