Don't know Onyxia yet? Learn about the project
Looking for our public instance? datalab.sspcloud.fr
Let's get in touch! Join our Slack
Onyxia is a web app that aims at being the glue between multiple open source backend technologies to
provide a state of art working environnement for data scientists.
Onyxia is developed by the French National institute of statistics and economic studies (INSEE) and the Interministerial Digital Directorate (DINUM, CodeGouvFr).
Core feature set:
- An interface for launching docker images
(e.g: Jupyter, RStudio) on demand on a Kubernetes cluster.
The catalog of available images is not part of the app, you can create your own. (here is the catalog we build for the institute's needs.) - Users can define the amount of RAM, CPU and GPU they would like to allocate to their containers.
- Specify a custom init script to be executed at launch.
- Define environnement variables to be made available in the containers.
- Save and restore your service service configurations
- Deep integration with S3 for working with data (S3 as the open standard, not the AWS service) and with Vault (for secret management)
- Keycloak integration.
OpenLAB - Download slides
Les Entrepreuneurs d'intérêt général - Découvrir le programme
If your are a new contributor, please refer to the technical documentation.
To release a new version, do not create a tag manually, simply bump the package.json
's version then push on the default branch,
the CI will takes charge of publishing on DockerHub
and creating a GitHub release.
- A docker image with the tag
:main
is published on DockerHub for every new commit on themain
branch. - When the commit correspond to a new release (the version has changed) the image will also be tagged
:vX.Y.Z
and:latest
. - Every commit on branches that have an open pull-request on
main
will trigger the creation of a docker image tagged:<name-of-the-feature-branch>
.
A CD pipeline is also in place; The CI of this repo triggers the CI of the GitOPS repo InseeFrLab/paris-sspcloud. The CI of paris-sspcloud checks if there is a newer version of Onyxia-web than the one already in production. If yes, it performs the automatic commit that cause ArgoCD to restart the relevant pods.