Learning Library

← Back to Library

Cloud Shell: Remote Development Anywhere

Key Points

  • A cloud shell is a browser‑based command‑line environment that lets you access and manage cloud resources from any internet‑connected computer, even when you’re away from your own workstation.
  • Unlike a local machine, it consumes no personal CPU or memory, requires no manual installation or updates of tools, and automatically handles cloud authentication and token management.
  • It provides a ready‑to‑use, always‑up‑to‑date set of development utilities—including git, multiple programming languages, and a built‑in editor—so you can code, edit scripts, and run commands instantly.
  • With cloud shell you can monitor application health, view logs, and control infrastructure and services directly, enabling rapid issue resolution (e.g., fixing a production outage from a hotel computer).

Full Transcript

# Cloud Shell: Remote Development Anywhere **Source:** [https://www.youtube.com/watch?v=TiEwRiX6kGo](https://www.youtube.com/watch?v=TiEwRiX6kGo) **Duration:** 00:09:10 ## Summary - A cloud shell is a browser‑based command‑line environment that lets you access and manage cloud resources from any internet‑connected computer, even when you’re away from your own workstation. - Unlike a local machine, it consumes no personal CPU or memory, requires no manual installation or updates of tools, and automatically handles cloud authentication and token management. - It provides a ready‑to‑use, always‑up‑to‑date set of development utilities—including git, multiple programming languages, and a built‑in editor—so you can code, edit scripts, and run commands instantly. - With cloud shell you can monitor application health, view logs, and control infrastructure and services directly, enabling rapid issue resolution (e.g., fixing a production outage from a hotel computer). ## Sections - [00:00:00](https://www.youtube.com/watch?v=TiEwRiX6kGo&t=0s) **Cloud Shell Enables Remote Troubleshooting** - The speaker defines cloud shell as a browser‑based command line that lets developers manage and fix cloud resources from any device without local installations, highlighting its speed, low resource use, and convenience compared to a local machine, illustrated by a vacation‑time app repair scenario. - [00:03:13](https://www.youtube.com/watch?v=TiEwRiX6kGo&t=193s) **Benefits and Architecture of Cloud Shell** - The speaker explains how a cloud shell lets developers manage applications, view logs, and code using built‑in tools while describing its underlying runtime VM, storage options, and shell image. - [00:06:23](https://www.youtube.com/watch?v=TiEwRiX6kGo&t=383s) **Managed vs User‑Controlled Cloud Shell** - The speaker compares vendor‑managed cloud shells—pre‑configured with curated tools, runtime, and storage—to user‑managed shells that allow custom security locations and toolsets, and outlines additional features such as web port preview, GUI editors, debuggers, and file upload/download capabilities. ## Full Transcript
0:00What is a cloud shell, and how can a cloud  shell enable rapid cloud resource management and 0:07development from anywhere? I'm Nathan Heckman from  IBM Cloud and I'm going to answer that today. So, 0:15let's say you just finished  developing an exciting new app 0:20and you decide to go on a  well-earned vacation. So, this is you 0:29and you're sitting on a beach enjoying yourself  when all of a sudden you get a call from your boss 0:37and they're not happy because that  application just went down in production. 0:42So what do you do? You don't have your work  computer with you on the beach. Enter cloud shell. 0:51You log into one of the hotel computers, you  open up a web browser, and with cloud shell 0:57you're able to fix the app in no time at all. So  that you can go back to enjoying your vacation 1:03and your boss is happy. So let's compare  some of the benefits of cloud shell 1:11with working with your local  machine. In a shell, so 1:19with your local machine there's some limitations,  right. So first of all, inherently you're going 1:26to use more resources on your CPU and memory,  it's just more resource intensive because it's 1:33actually on your machine. You also need to worry  about installing software and updating software 1:43and tools. This can be annoying, right. Everyone's  been there where you're constantly prompted for 1:50updates and you need to keep things to the  latest version in order to keep them working. 1:57And finally if you're working with a cloud  provider you're always getting logged out 2:04so you have to manage your authentication,  your tokens, etc. Well with cloud shell 2:13it's a consistent environment. 2:20What does this mean? So first of all, all of  your cloud authentication is taken care of. 2:28So you're securely authenticated to your  cloud provider without doing anything. 2:35Also, you don't need to worry about  installing tools, everything is already 2:40installed and ready to go. And finally, maybe  most helpful, is there's no need to update. 2:51So everything's on the latest version and  you can get started and get right to work. 2:58Another benefit of cloud shell is  that you can manage your cloud. 3:07So, what can you manage? Well  your resources and infrastructure. 3:15You can manage your applications and you can  view logs. So, if you're sitting on a beach 3:23open up a cloud shell you can check the status  of your applications and get it back to working. 3:32A final benefit of cloud shell is that  it's a cloud based dev environment. 3:41So what does this mean for you? Cloud  shells include all the tools that you 3:47need to be productive as a developer. So,  tools like git for source control management. 3:54Cloud shells typically include  several languages as well. 3:58So say you are a node developer, you  can use node right within a cloud shell. 4:05And finally, cloud shells typically include an  editor. So everyone uses or knows of vim or nano. 4:16So you can actually edit files and scripts and  code right within your cloud shell environment. 4:24Great. So now let's step back a bit  and talk about what is a cloud shell, 4:30what are some of the building  blocks of a cloud shell. 4:35So, first of all, 4:40at the base of what runs  cloud shell is a run time, 4:46or VM. This is what powers  cloud shell at the lowest level. 4:54Next is storage. So, cloud shells may have  either persisted or temporary storage. 5:06Persisted meaning as you go from session  to session, maybe you log out log back in, 5:10you'll get your same environment and same storage.  Temporary, obviously. It's temporary, so the 5:16storage will be removed after some time.  And finally you have the cloud shell image. 5:27And this is what you interact with, right. So,  this could be some bash based shell. It includes 5:36your tools and languages. So, this is what you  actually interact with on a cloud shell. Now of 5:46course all of this you access from a web browser.  So, it's super convenient and always available. 5:57Something to note too about cloud  shells is that they can either be 6:04managed by you the user. 6:08And that means that you actually will provide  the runtime, storage, and image. So you can 6:13configure that exactly how you want it, or a  cloud shell can be managed by the cloud vendor. 6:28So what that means is they set up everything  for you, right. There's some benefits of both 6:32with the cloud vendor managed cloud  shell, everything's already ready to go 6:37and cloud shell runtime, storage, image, they  already curate the tools and languages that 6:43are included and can be really convenient.  User managed can also have some benefits too. 6:49Maybe there's some security  requirements from your enterprise 6:53about where storage needs to be located, so  you can actually configure that yourself. 6:59You can also configure exactly which tools and  languages you want to start up with cloud shell. 7:06Great. So there's a few other features that cloud  shells could include. First one is web preview. 7:17What this is it essentially allows  you to preview a port on cloud shell 7:24similarly to how you do on your local  machine. So maybe port 3000 or port 7:288080 when you're doing local development you  get that same experience but on the cloud. 7:37The next feature of a cloud shell is, that it  may or may not have, is a GUI based editor. 7:46Now pretty self-explanatory,  this is rather than a text editor 7:50like a Vim or Nano, it's actually a GUI where  you can go in and edit files or scripts, 7:56it may even have a debugger. It can be very  useful when you're developing with cloud shell. 8:04And finally, cloud shells could have 8:09file upload or download. So, also pretty  self-explanatory, it allows you to actually 8:19upload files from your local computer to  the cloud shell environment, so that if 8:24you go to somewhere else some other computer or  workstation you can see those same files there. 8:29It is also for file download, you can  take files or scripts from cloud shell 8:34environment down to your local machine and  continue development there if you so choose. 8:41So that's what cloud shell is and those are some  of the benefits. As you can see cloud shell is a 8:47powerful consistent environment, it's your own  personal workspace on the cloud. Thank you. 8:54If you have questions please drop us a line  below. If you want to see more videos like 8:59this in the future, please like and subscribe.  And don't forget, you can grow your skills and 9:04earn a badge with IBM CloudLabs which are free  browser-based, interactive Kubernetes labs.