Skip to content

Islandora-Devops/isle-nodejs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ISLE: NodeJS

LICENSE CI

Introduction

This repository provides the islandora/nodejs image which only exists to provide a custom Alpine APK package(s). As code-server is often one or two versions behind what gets shipped with Alpine.

Since this does not change often and takes a very long time to cross compile for both platforms it's been moved to it's own repository.

Requirements

To build the Docker images using the provided Gradle build scripts requires:

Host-platform Builds

You can build your host platform locally using the default builder like so.

docker context use default
docker buildx bake

Multi-platform builds

To test multi-arch builds and remote build caching requires setting up a local registry.

Please use isle-builder to create a builder to simplify this process. Using the defaults provided, .e.g:

make start

After which you should be able to build with the following command:

REPOSITORY=islandora.io docker buildx bake --builder isle-builder ci --push

Release Builds / Updating DockerHub

Unfortunately this takes too long to cross compile as a Github actions so building and updating images in DockerHub must be done manually.

First create a tag that includes both the alpine version and the nodejs version. For example:

git tag alpine-3.20.2-nodejs-18.19.1-r0

Then build and push the images to DockerHub, and create an manifest:

export REPOSITORY=islandora
export TAG=alpine-3.20.2-nodejs-20.15.1-r0
docker login -u islandoracommunity
docker buildx bake --builder isle-builder ci --push
docker buildx imagetools create -t islandora/nodejs:${TAG} islandora/nodejs:${TAG}-amd64 islandora/nodejs:${TAG}-arm64
docker logout