←  Back to Changelog The Dazzle logo

February 14, 2022

New workspace images built with Dazzle v2

By default, your Gitpod workspaces are based on a Docker image called gitpod/workspace-full. It contains all sorts of tools, SDKs and languages you may need — so you are ready-to-code with no friction.

What if you were only interested in Rust though, or Node.js LTS? You could create a custom Dockerfile, tell Gitpod about it and all would be fine. It would even be pretty simple to do.

At Gitpod, we are all about removing friction and frequently ask ourselves, “How can we improve?“. So we came up with an even easier solution. We are now in a position to create much more fine-grained workspace images!

To start this next era, we recently built a whole bunch of new images with Dazzle v2. Dazzle is a Docker/OCI image builder and its goal is to build independent layers where a change to one layer does not invalidate the ones sitting “above” it.

Compared to the previous version of Dazzle, the new v2 is about 5x faster, more reliable and less hacky 🔨.

Here is a list of what you can use today:

  • gitpod/workspace-c
  • gitpod/workspace-clojure
  • gitpod/workspace-go
  • gitpod/workspace-node
  • gitpod/workspace-node-lts
  • gitpod/workspace-python
  • gitpod/workspace-ruby-2
  • gitpod/workspace-ruby-3
  • gitpod/workspace-rust

For an up-to-date list of available images, please refer to this list.

In your .gitpod.yml, all you need to do is add the following line:

language icon language: 
yml
image: gitpod/workspace-xyz

As if this wasn’t exciting enough, this new solution lays the foundation for some very cool features you will be able to leverage directly to create custom images for your workspaces.

To tease this a bit more, imagine a future where you can pick & choose which tools you’d like to install in your workspace and Gitpod will automagically provide them to you at lightspeed, or thereabouts.

We are interested in your feedback and suggestions, please let us know in our dedicated feedback issue or chat with us.

Avatar of csweichel Avatar of princerachit Avatar of kylos101

Fixes and improvements

  • #8119 - Added support for Git LFS during content init Avatar of csweichel Avatar of kylos101
  • #8134 - Enable id check for seccomp notify Avatar of Furisto Avatar of utam0k
  • #8139 - Improved workspace memory-pressure eviction resilience Avatar of csweichel Avatar of sagor999
  • #8161 - Add workspace start request debug logging to ws-manager Avatar of csweichel Avatar of sagor999
  • #8179 - A bit of improvements to cache_reclaim Avatar of sagor999 Avatar of utam0k
  • #8132 - [GitHub] Fix the user account picked for a prebuild. Avatar of AlexTugarev Avatar of geropl Avatar of jldec Avatar of svenefftinge
  • #8143 - Update code to 1.64.2 Avatar of filiptronicek Avatar of jeanp413
  • #8112 - Autofix: upgrade-nvm-tools Avatar of autofix-bot Avatar of felladrin Avatar of iQQBot Avatar of jankeromnes
  • #8099 - fix dashboard contextURL handling Avatar of JanKoehnlein Avatar of akosyakov Avatar of geropl Avatar of jankeromnes
  • #7569 - Support private dotfiles repo Avatar of csweichel Avatar of gtsiolis Avatar of iQQBot Avatar of mustard-mh
  • #8100 - Make ContextURL.parseToURL support the newly-accepted git@[host]:[user]/[repo].git format Avatar of akosyakov Avatar of geropl Avatar of jankeromnes
  • #8036 - Refactor dynamic CPU limiting to provide fairer scheduling. Avatar of corneliusludmann Avatar of csweichel Avatar of sagor999 Avatar of utam0k
  • #8093 - Fix wrong token selection if multiple found for a profile. Avatar of AlexTugarev Avatar of geropl Avatar of jankeromnes
  • #7715 - [server][dashboard] Improve ‘New Workspace’ modal with a search input, keyboard navigation, and a new context URL suggestion API Avatar of AlexTugarev Avatar of JanKoehnlein Avatar of filiptronicek Avatar of gtsiolis Avatar of jankeromnes Avatar of jldec Avatar of svenefftinge
  • #7833 - Fix Bitbucket push event handling Avatar of AlexTugarev Avatar of geropl Avatar of gtsiolis Avatar of jankeromnes
  • #8073 - configure basic rate-limiting for `startWorkspace Avatar of geropl Avatar of jankeromnes
  • #7727 - [installer]: add jaeger sampling options to the tracing object Avatar of JanKoehnlein Avatar of MrSimonEmms Avatar of aledbf Avatar of corneliusludmann Avatar of kylos101 Avatar of sagor999
  • #7923 - Improved in-transit security of user environment variables Avatar of AlexTugarev Avatar of akosyakov Avatar of csweichel Avatar of geropl Avatar of jankeromnes
  • #7968 - Fix missing status updates for prebuilds. Avatar of AlexTugarev Avatar of laushinka
  • #7940 - reduce idle DB load on SH installations Avatar of AlexTugarev Avatar of geropl
  • #7978 - [gitlab] user-scoped env vars can now be filtered for nested repos on Gitlab Avatar of AlexTugarev Avatar of JanKoehnlein
  • #7882 - Admins can do a text search for projects and their associated prebuilds. Avatar of JanKoehnlein Avatar of gtsiolis Avatar of jldec Avatar of laushinka
  • #7951 - [server] Support ‘git@[host]:[user]/[repo].git’ format in context URLs Avatar of AlexTugarev Avatar of JanKoehnlein Avatar of jankeromnes
  • #7839 - [installer]: put component ownership under webapp/workspace teams Avatar of MrSimonEmms Avatar of aledbf Avatar of csweichel Avatar of kylos101 Avatar of princerachit
  • #7926 - [wa-manager] Refactor connectToWorkspaceDaemon helper Avatar of aledbf Avatar of csweichel Avatar of utam0k