Developing for the cloud… in the cloud… with GitPod! Horacio Gonzalez 2021-11-01
Slide 2
Who are we? Introducing myself and introducing OVHcloud
Slide 3
Horacio Gonzalez @LostInBrittany Spaniard lost in Brittany, developer, dreamer and all-around geek
Slide 4
OVHcloud: A global leader Web Cloud & Telcom
30 Data Centers in 12 locations
1 Million+ Servers produced since 1999
Private Cloud
34 Points of Presence on a 20 TBPS Bandwidth Network
1.5 Million Customers across 132 countries
Public Cloud
2200 Employees worldwide
3.8 Million Websites hosting
Storage
115K Private Cloud VMS running
1.5 Billion Euros Invested since 2016
300K Public Cloud instances running
P.U.E. 1.09 Energy efficiency indicator
380K Physical Servers running in our data centers
20+ Years in Business Disrupting since 1999
Network & Security
Slide 5
High performance at affordable prices
From bare-metal servers to public or private cloud
Slide 6
Why are you talking about an IDE? This is the Container Day conference, you fool!
Slide 7
We all live in a Cloud world
Cloud services are everywhere
Slide 8
Containers are a foundation of Cloud
More and more of cloud services are built on containers
Slide 9
Developers build the Cloud
Every service, every application
Slide 10
But they still do it in a traditional way
Installing an IDE on their computer
Slide 11
What about doing it different?
Building for the Cloud in the Cloud
Slide 12
Ok, man, stop the marketing…
This is a technical talk, let’s talk tech
Slide 13
Being a cloud developer in 2021 Or do we really need 5000$ laptops to develop an app
Slide 14
Let me tell you a story Your next project From: Boss boss@mycompany.com To: Developer dev@mycompany.com Hi Developer! Next Monday you will begin a new project with Big Customer. You will be in a team building a system with a distributed architecture, using Redis & MariaDB storage, Go Python and Java applications, RabbitMQ event bus, … And here you have your new laptop, a good one this time, it has 8 GB RAM!
Slide 15
Containers have changed the game
Using on your laptop the same architecture that in production
Slide 16
Even for complex architectures
Slide 17
But a laptop is still a laptop
And all those containers need lots of CPU and RAM
Slide 18
Setting it up takes lots of time
Installing and configuring isn’t always straightforward
Slide 19
In an ideal world, IDEaaS
Integrated Development Environment as a Service
Slide 20
GitPod is an open source IDEaaS
Automated, ephemeral developer environments in the web
Slide 21
A full IDE running in a browser tab Web based IDE 🌍 ● Eclipse Theia → VS Code ● Remote ● Workspaces
Slide 22
But more than an IDE
An IDE is just one building block of a working cloud based developer environment
GitPod projects are based on Git It can be used with: ● Any GitPod version: ○ GitLab ○ GitHub ○ BitBucket
● On-premises or open source version ○ Your own private Git repository
Slide 25
Anatomy of a GitPod project ● A default 🐳 Docker image: gitpod/workspace-full
● Two optional 📝 configuration files: .gitpod.dockerfile .gitpod.yml
Slide 26
Projects & Workspaces ● A workspace is a full 🐳 Docker environment ● Multiple workspaces for every project ○ For example for branches or specific commits
● Workspaces are shareable ● Communication from workspace to workspace
Slide 27
How much does it cost? ● SaaS version
● Free Professional Open Source plan: no limit (public projects) ● Self hosted (K8S) Open Source (Free) et Pro (29€)
Slide 28
Some other use-cases Unexpected good matches for GitPod
Slide 29
Running workshops Congratulations Horacio From: Big Conference organization@bigconference.com To: Horacio Gonzalez horacio.gonzalez@gmail.com Hi Horacio! We are happy to tell you that your workshop “Learn Web Components in two hours” has been accepted at Big Conference 2021. As we are an hybrid conference, you will have 50 attendees physically in the room and 200 remote attendees. The onboarding is critical in this setup, please be sure that attendees can easily spawn a working environment in several minutes, even with a bad network or old computers.
Setting up team environments New team arrives on Monday From: Boss boss@mycompany.com To: Project Manager pm@mycompany.com Hi Project Manager! Your Shiny Project team will arrive next Monday. You will have 15 developers in the team, and they need to be productive from day one. A batch of 15 laptops and 3 servers has been sent by DHL to your office, please be sure that they are installed and working by Monday morning. Have a great weekend!
Slide 32
Integrated learning platform OVHcloud Managed Kubernetes course From: Training Partner <organization@training@partner.com> To: Horacio Gonzalez horacio.gonzalez@ovhcloud.com Hi Horacio! As explained by phone, we would like you to do an OVHcloud Managed Kubernetes course for our organisation. We need to be fully web based, attendees won’t be able to install anything in their computers (not even kubectl, helm or any other tool). Attendees will only have their browsers and their OVHcloud API credentials.
Slide 33
Making customers test new features Customer X wants to test the feature From: Boss boss@mycompany.com To: Project Manager pm@mycompany.com Hi Project Manager! Customer X has asked to test the new feature your team is working on. I have pointed to the Git repository, but they aren’t interesting in reading code, they want to test it! I have tell them that you will send them a way to test by Monday. Have a great weekend!
Slide 34
Code for the cloud, in the cloud
Slide 35
Installing GitPod Open Source You only need a Kubernetes…
Slide 36
Good and bad reasons Good reasons to use GitPod Open Source: ● I can’t use a SaaS to deal with my source code ○ That also means no GitHub, GitLab or BitBucket…
Bad reasons to use GitPod Open Source: ● I am cheap and I don’t want to pay the SaaS ○ It’s going to cost you time and money to host it
Slide 37
Not a straightforward task…
You need some Kubernetes skills…
Slide 38
If you don’t need to build it, choose a certified managed solution
You get the cluster, the operator get the problems
Slide 39
Using OVHcloud Managed Kubernetes
A easy, cost-effective solution
Slide 40
One more thing… Let’s copy from the master
Slide 41
VS Code in the browser for everyone
OpenVSCode Server
Slide 42
Open source project by GitPod
Backed by GitLab, VMware, Uber, SAP, Sourcegraph, SUSE… https://github.com/gitpod-io/openvscode-server/
Slide 43
How is this different to Gitpod?
GitPod is more than an IDE
Slide 44
Very simple to deploy
docker run -it —init -p 3000:3000 -v “$(pwd):/home/workspace:cached” gitpod/openvscode-server
Slide 45
Disclaimer: a two people work
Many thanks to Philippe Charrière (@k33g_org)