Okteto Cloud gives you free access to secure Kubernetes namespaces, fully integrated with remote development capabilities. Develop your Kubernetes applications in Okteto Cloud and forget about slow and tedious local development forever.
This tutorial will show you how to create an account in Okteto Cloud and how to develop an ASP.NET sample application.
Get a local version of the ASP.NET Sample App by executing the following commands:
git clone https://github.com/okteto/aspnetcore-getting-started
k8s.yml file contains the Kubernetes manifests of the ASP.NET Sample App. Deploy a dev version of the application by executing:
kubectl apply -f k8s.yml
deployment.apps "hello-world" created
Open your browser and go to the URL of the application. You can get the URL by logging into Okteto Cloud and clicking on the application’s endpoint:
Did you notice that you are accessing your application through an HTTPs endpoint? This is because Okteto Cloud will automatically create them for you when you deploy your application. Cool no 😎?
We are going to use the dev version of the ASP.NET Sample App we just deployed as our remote development environment. To do that, run the following command:
✓ Development environment activated
okteto up command starts a remote development environment which means:
okteto/dotnetcore:3. This image contains the required dev tools to build, test, debug and run the ASP.NET Sample App.
All of this (and more) can be customized via the
okteto.ymlmanifest file. You can also use the file
.stignoreto skip files from file synchronization. This is useful to avoid synchronizing build artifacts or git metadata.
To run the application, execute in the remote shell:
dotnet watch run
watch : Polling file watcher is enabled
Go back to the browser, and reload the page to test that your application is running.
Open the file
Controllers/HelloWorldController.cs in your favorite local IDE and modify the response message on line 25 to be Hello world from Okteto!. Save your changes.
Take a look at the remote shell and notice how the changes are detected by
dotnet watch run and automatically built and reloaded.
Go back to the browser and reload the page. Your code changes were instantly applied. No commit, build or push required 😎!
Okteto enables you to debug your applications directly from your favorite IDE. Let’s take a look at how that works in VS Code aausing the VS dotnet debugger.
For this step, we are going to use the
C# extension for VS Code. If you don’t have it, you can install it here. You might need to restart your VS Code instance.
HelloWorldController.cs in VS Code, set a breakpoint on line
26 and press
F5. VS Code will connect to your remote development environment via SSH and give you a list of processes you can attach to. Scroll through the list, and select the
helloworld process, as shown below (you can also type
helloworld in the search bar directly).
Once you select the process, VS Code will switch to debug view, launch the debugger and attach it to the process you just selected. You’ll know it’s finished when the status bar at the bottom turns orange.
Go back to the browser and reload the page. As soon as the service receives the request the execution will halt at your breakpoint and VS Code will jump to the front of the screen. You can then inspect the request, the available variables, etc.
Your code is executing in Okteto Cloud, but you can debug it from your local machine without any extra services or tools. Pretty cool no? 😉
Congratulations, you just developed your first Kubernetes application in Okteto Cloud 🚀.
Okteto lets you develop your applications directly in Kubernetes. This way you can:
- Reduce local setup and eliminate integration issues by developing the same way your application runs in production
- Test your application as fast as you type code, without typing either
kubectlin your inner loop cycle
- No more CPU cycles wasted in your machine. Hardware and network just limited by the power of the cloud
Okteto uses the
okteto.yml file to determine the name of your development environment, the docker image to use and where to upload your code. Check the Okteto manifest docs to customize your development environments with your own dev tools, images, and dependencies to adapt Okteto to your own application.