Devfile registry - storing contents of the public community, OCI-based, devfile registry hosted at https://registry.devfile.io.
The public registry is updated weekly, by 12pm EST Wednesdays, with any updated stacks in this repository.
The staging devfile registry, https://registry.stage.devfile.io is refreshed upon each commit to main in this repository. Production, https://registry.devfile.io, promoted manually and as mentioned above, is done each Wednesday, as needed.
If you are a stack owner and need to request an urgent refresh of https://registry.devfile.io before Wednesday (for example if a stack is broken), please open an issue in the devfile/api repository outlining the following:
- Stack name
- Why the refresh is needed
- Why the refresh cannot wait until the next regularly scheduled refresh
/area registry
somewhere in the issue description, so that thearea/registry
label gets added.
- Docker or Podman
- Git
To build this devfile registry into a container image run bash .ci/build.sh
. A container image will be built using the devfile registry build tools. By default these scripts will use docker
and be built for the linux/amd64
architecture.
To build using podman
first run:
export USE_PODMAN=true
To build for linux/arm64
run:
bash .ci/build.sh linux/arm64
From there, push the container image to a container registry of your choice and deploy using a devfile adopted devtool or one of the methods outlined here.
If you are trying to run bash .ci/build_and_deploy.sh
and are experiencing errors while using MacOS with an apple silicon chip, you should first run export PLATFORM_EV=linux/arm64
to properly set the container config. By default the containers will be built for linux/amd64
.
- Docker or Podman
- Git
- Kubernetes or Red Hat OpenShift
- odo v3.15.0+
The following can build and deploy a devfile registry using odo v3:
odo deploy --var indexImageName=quay.io/<user>/devfile-index --var indexImageTag=<tag>
Important: odo deploy
needs these overrides to not push to the default quay.io/devfile/devfile-index:next
.
The deployment host name can be set by overriding hostName
and hostAlias
:
odo deploy --var hostName=devfile-registry.<cluster_hostname> \
--var hostAlias=devfile-registry.<cluster_hostname> \
--var indexImageName=quay.io/<user>/devfile-index \
--var indexImageTag=<tag>
Notes:
hostName
is required for Kubernetes ingresses, OpenShift routes are optional and defaults to<deployment_namespace>.<cluster_hostname>
.hostAlias
sets the leading host name under static links in registry viewer entries, defaults to our staging deploymentregistry.stage.devfile.io
.
Prevent odo v3 deployment built images from being pushed by running:
# Set docker to target minikube's image registry
eval $(minikube docker-env)
ODO_PUSH_IMAGES=false odo deploy \
--var hostName=devfile-registry.<cluster_hostname> \
--var hostAlias=devfile-registry.<cluster_hostname> \
--var indexPullPolicy=Never
Deployments made with odo v3 can be deleted using:
odo delete component --name devfile-registry-community
For contributing Devfile stacks to this registry, please see CONTRIBUTING.md.
The Devfile Registry is configured with telemetry to collect only the necessary information to improve the value of our service. For further details, refer to the Telemetry Data Collection Notice
Please reference GOVERNANCE.md for more information.
A list of users that use this project can be found by referencing USERS.md
Information regarding meetings for the Devfile project can be found in GOVERNANCE.md
There is a Slack channel open for discussion under the Kubernetes Slack workspace, you can find it here