Contributed by @sprucecellodev125, originally in sprucecellodev125/custom-gitpod-image. (Ref.)
So, We found some people in Gitpod Discord Community Server asked how to use custom ISO on Gitpod, however Gitpod is running on k8s cluster, means it's not an ordinary cloud VM like AWS EC2 or anything else, but an container running inside Google Kubernetes Engine.
So, We finally go to Gitpod workspace image repository and see the Dockerfile of gitpod/workspace-base
, set up .gitpod.Dockerfile
for testing, and finally push my change and create another workspace to test it. (We recommend you to use gp rebuild
to test & debug the configuration). And finally We've sucessfully run Arch Linux and Debian inside Gitpod.
Yeah of course, and even worse
- All of those images doesn't have really functioning SSH Server, mean you can't SSH into your workspace or use remote feature in your editor/IDE
- Lack of version manager (for Node.js and Ruby (maybe?))
- Docker might not working as expected
-
Edit
.gitpod.yml
and change the path of the dockerfile (for example if you wantdebian-based workspace
, in line 2 change.gitpod.Dockerfile
to.gitpod.debian.Dockerfile
)
PS: If you don't want to build the image you can use prebuilt, auto-updated image in this repository (for example use ghcr.io/sprucecellodev125/custom-gitpod-image:latest
for Arch Linux image)
- Create a new workspace with the following configuration:
- Use your own fork as context url
- Only use VSCode in browser as desktop version of VSCode and any IDE doesn't work
- You can use ay workspace class
-
After creating a workspace it should be automatically start the build process (if you prefer to use .gitpod*.Dockerfile) otherwise it should be started automatically
-
Enjoy (if you use arch linux image run
pacman -Syu neofetch
and now you use arch btw)