Skip to content

Commit b2ff370

Browse files
authored
Merge pull request #3466 from SUSE/for-deploy-16.1
🤖: Update build recipes for 16.1
2 parents 6206155 + 8102037 commit b2ff370

5 files changed

Lines changed: 143 additions & 0 deletions

File tree

.obs/workflows.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,10 @@ staging_build:
6969
source_project: home:pushman:BCI:CR:16.1
7070
source_package: nginx-image
7171
target_project: home:pushman:BCI:CR:16.1:Staging
72+
- branch_package:
73+
source_project: home:pushman:BCI:CR:16.1
74+
source_package: nodejs-24-image
75+
target_project: home:pushman:BCI:CR:16.1:Staging
7276
- branch_package:
7377
source_project: home:pushman:BCI:CR:16.1
7478
source_package: openjdk-17-devel-image
@@ -221,6 +225,9 @@ refresh_devel_BCI:
221225
- trigger_services:
222226
project: devel:BCI:16.1
223227
package: nginx-image
228+
- trigger_services:
229+
project: devel:BCI:16.1
230+
package: nodejs-24-image
224231
- trigger_services:
225232
project: devel:BCI:16.1
226233
package: openjdk-17-devel-image

nodejs-24-image/Dockerfile

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
# SPDX-License-Identifier: MIT
2+
3+
# Copyright (c) 2026 SUSE LLC
4+
5+
# All modifications and additions to the file contributed by third parties
6+
# remain the property of their copyright owners, unless otherwise agreed
7+
# upon.
8+
9+
# The content of THIS FILE IS AUTOGENERATED and should not be manually modified.
10+
# It is maintained by the BCI team and generated by
11+
# https://github.com/SUSE/BCI-dockerfile-generator
12+
13+
# Please submit bugfixes or comments via https://bugs.opensuse.org/
14+
# You can contact the BCI team via https://github.com/SUSE/bci/discussions
15+
16+
#!UseOBSRepositories
17+
18+
#!BuildTag: bci/nodejs:%%nodejs_version%%-%RELEASE%
19+
#!BuildTag: bci/nodejs:%%nodejs_version%%
20+
#!BuildTag: bci/nodejs:24
21+
#!BuildTag: bci/node:%%nodejs_version%%-%RELEASE%
22+
#!BuildTag: bci/node:%%nodejs_version%%
23+
#!BuildTag: bci/node:24
24+
#!BuildName: bci-nodejs-24
25+
#!BuildVersion: 16.1.24
26+
FROM bci/bci-base:16.1
27+
28+
RUN set -euo pipefail; \
29+
zypper -n install --no-recommends nodejs24 npm24 update-alternatives curl findutils gawk git-core procps util-linux
30+
31+
# cleanup logs and temporary files
32+
RUN set -euo pipefail; zypper -n clean -a; \
33+
rm -rf {/target,}/var/log/{alternatives.log,lastlog,tallylog,zypper.log,zypp/history,YaST2}; \
34+
rm -rf {/target,}/run/*; \
35+
rm -f {/target,}/etc/{shadow-,group-,passwd-,.pwd.lock}; \
36+
rm -f {/target,}/usr/lib/sysimage/rpm/.rpm.lock; \
37+
rm -f {/target,}/var/cache/ldconfig/aux-cache; \
38+
command -v zypper >/dev/null 2>&1 || rm -f /var/lib/zypp/AutoInstalled
39+
40+
# set the day of last password change to empty
41+
RUN set -euo pipefail; sed -i 's/^\([^:]*:[^:]*:\)[^:]*\(:.*\)$/\1\2/' /etc/shadow
42+
43+
# Define labels according to https://en.opensuse.org/Building_derived_containers
44+
# labelprefix=com.suse.bci.nodejs
45+
LABEL org.opencontainers.image.authors="https://github.com/SUSE/bci/discussions"
46+
LABEL org.opencontainers.image.title="SUSE Linux BCI Node.js 24 development"
47+
LABEL org.opencontainers.image.description="Node.js 24 development container based on the SUSE Linux Base Container Image."
48+
LABEL org.opencontainers.image.version="%%nodejs_version%%"
49+
LABEL org.opencontainers.image.url="https://www.suse.com/products/base-container-images/"
50+
LABEL org.opencontainers.image.created="%BUILDTIME%"
51+
LABEL org.opencontainers.image.vendor="SUSE LLC"
52+
LABEL org.opencontainers.image.source="%SOURCEURL%"
53+
LABEL org.opencontainers.image.ref.name="%%nodejs_version%%-%RELEASE%"
54+
LABEL org.opensuse.reference="registry.suse.com/bci/nodejs:%%nodejs_version%%-%RELEASE%"
55+
LABEL org.openbuildservice.disturl="%DISTURL%"
56+
LABEL com.suse.supportlevel="techpreview"
57+
LABEL com.suse.supportlevel.until="2028-11-30"
58+
LABEL com.suse.eula="sle-beta"
59+
LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle#suse-linux-enterprise-server-16"
60+
LABEL com.suse.release-stage="beta"
61+
# endlabelprefix
62+
LABEL io.artifacthub.package.readme-url="%SOURCEURL_WITH(README.md)%"
63+
ENV NODE_VERSION="24"

nodejs-24-image/README.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# Node.js 24 development container image
2+
3+
![Support Level](https://img.shields.io/badge/Support_Level-techpreview-blue)
4+
[![SLSA](https://img.shields.io/badge/SLSA_(v0.1)-Level_4-Green)](https://documentation.suse.com/sbp/security/html/SBP-SLSA4/)
5+
[![Provenance: Available](https://img.shields.io/badge/Provenance-Available-Green)](https://documentation.suse.com/container/all/html/Container-guide/index.html#container-verify)
6+
7+
## Description
8+
9+
[Node.js](https://nodejs.org/) is a free, open source, cross-platform JavaScript run-time environment that lets developers write server-side applications and tools outside of a browser.
10+
11+
## Usage
12+
13+
To deploy an application, install dependencies, copy the sources, and configure the application's main script:
14+
15+
```Dockerfile
16+
FROM registry.suse.com/bci/nodejs:24
17+
18+
WORKDIR /app
19+
20+
COPY package.json package-lock.json ./
21+
RUN npm install
22+
23+
COPY . .
24+
25+
EXPOSE 3000
26+
27+
CMD [ "node", "./server.js" ]
28+
```
29+
30+
Build and run the container image:
31+
32+
```ShellSession
33+
$ podman build -t my-node-app .
34+
$ podman run -it -p 3000:3000 --rm my-node-app
35+
```
36+
37+
The example above assumes that there is a `package-lock.lock` file in the application directory.
38+
To generate a `package-lock.lock` file, use the following command:
39+
40+
```ShellSession
41+
$ podman run --rm -v "$PWD":/app:Z -w /app registry.suse.com/bci/nodejs:24 npm install --package-lock-only
42+
```
43+
44+
To run a single script inside a container, use the following command:
45+
46+
```ShellSession
47+
$ podman run --rm -v "$PWD":/app:Z -w /app registry.suse.com/bci/nodejs:24 node script.js
48+
```
49+
50+
## Licensing
51+
52+
`SPDX-License-Identifier: MIT`
53+
54+
This documentation and the build recipe are licensed as MIT.
55+
The container itself contains various software components under various open source licenses listed in the associated
56+
Software Bill of Materials (SBOM).
57+
58+
This image is a tech preview. Do not use it for production.
59+
Your feedback is welcome.
60+
Please report any issues to the [SUSE Bugzilla](https://bugzilla.suse.com/enter_bug.cgi?product=PUBLIC%20SUSE%20Linux%20Enterprise%20Base%20Container%20Images).

nodejs-24-image/_service

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<services>
2+
<service mode="buildtime" name="docker_label_helper"/>
3+
<service mode="buildtime" name="kiwi_metainfo_helper"/>
4+
<service mode="buildtime" name="replace_using_package_version">
5+
<param name="file">Dockerfile</param>
6+
<param name="regex">%%nodejs_version%%</param>
7+
<param name="package">nodejs24</param>
8+
</service>
9+
</services>
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
-------------------------------------------------------------------
2+
Tue Feb 17 14:39:39 UTC 2026 - SUSE Update Bot <bci-internal@suse.de>
3+
4+
- First version of the Node.js 24 development BCI

0 commit comments

Comments
 (0)