-
Notifications
You must be signed in to change notification settings - Fork 35
Home
It's about fast workspaces for IDEs based on Theia. Theia is fast per se, fast here means fast workspace launch times with massive scalability.
Take a single instance Theia environment that works on an individual's server. How can that be served to a mass market with super quick start up?
Eclipse Che solves a superset of the problem but suffers from start up that is too slow. Gitpod is a closed source service that serves workspaces and it does this in a performant way. Both Che and Gitpod leverage Kubernetes for scale.
Theia Cloud is a light weight workspace management capability the marries: Theia, an OAUTH2 based authentication & authorisation capability, and Kubernetes.
The result is highly scalable Theia based IDEs, each IDE type underpinned by a Kubernetes service with readied pods.
The initial strawman is proposed to provide the facility for a dev to login to a provisioned C++ dev env within 5 seconds.
- Theia IDE supporting Clangd-9 on Debian 10 as a Docker image (the App)
- IDE embodied as a Kubernetes Service (via a Deployment)
- Keycloak as OAUTH2 provider
- Keycloak-Proxy (new name for GateKeeper) - this sits between the service and the app (Theia IDE)
- Kubernetes labels as the means to 'reserve and provision' an active pod for user session (to be proven)
- Kubernetes secrets as the means to furnish a provisioned pod with the user 'profile' which may contain key files (e.g. git keys)
The follow image shows the Kubernetes based architecture at the high level.