How to Deploy a Stateless Application on the SUSE Cloud Application Platform Developer Sandbox
What is Cloud Foundry?
Cloud Foundry is an open source multi-cloud application platform. It was originally written to enable developers to rapidly deploy their workloads to an opinionated platform. Opinionated in a sense, that it takes a stance on complex technical decisions and has many predefined settings which help its users to complete their journey without fiddling with those nifty grifty details.
The SUSE Cloud Application Platform is a distribution of Cloud Foundry that runs the key components of Cloud Foundry in modern containers.
While it is possible to run any kind of application on SUSE Cloud Application Platform it is preferable to run modern, cloud native, stateless applications on the platform.
What is a stateless application?
A modern, cloud native, stateless application is usually built up from a combination of multiple microservices. Leveraging the microservice architecture pattern helps developers isolate stateful from stateless parts of the application.
Stateless applications usually follow the principles laid out in the Twelve-Factor App manifest. The manifest lays out twelve universally applicable paradigms which developers of cloud native applications should respect. The paradigms govern how application components should interact and how they should be isolated from each other.
SUSE Cloud Application Platform helps developers implement these factors in a straightforward way.
The SUSE Cloud Application Platform Developer Sandbox
In order to get a feeling of what the SUSE Cloud Application Platform has to offer you can either install the stack on your own (which requires quite a bit of time, server resources and experience) or use the ready-made Developer Sandbox which is available to the SUSE Developer Community. It’s a free account on a SUSE Cloud Application Platform instance where you can explore the possibilities of the platform. The Developer Sandbox will be available as long as you need it.
Let’s have a look at the SUSE Developer Sandbox and let us deploy our first demo application. The goal of this exercise is, to lower the barrier and guide you on your way to get an application run on a container platform. In order to do so, follow the steps below – if you run into any issue, feel free to contact us through firstname.lastname@example.org.
1. Register for an account on the Developer Sandbox using the registration form
2. After registering and verifying your email you can navigate to the Developer Sandbox portal and log on to the Developer Sandbox
3. Click on “Get started” in the “Cloud Application Platform Developer Sandbox” to open the landing page for the Cloud Application Platform Sandbox
4. On the landing page you can navigate to “Get your Developer Sandbox now”. After logging in you will be redirected to your sandbox
5. You are now logged in to the Stratos based SUSE Cloud Application Platform web-based management UI
For this blog post we have prepared a simple application that we will be deploying to the Developer Sandbox instance of the SUSE Cloud Application Platform.
The application deployed is Caasperli. The name “Caasperli” is composed of CaaSP (Container as a Service Platform) and Kasperli. Kasperli is probably the most famous children’s audio and theatre character in the German-speaking part of Switzerland. Kasperli wears a red cap and stands out for his entertaining and funny adventures. In Switzerland the play on words is a real laugh and now you can get to know Caasperli and experience a fun and educational adventure into the wonderful world of CaaSP and CAP with him.
In this first post we will deploy a simple landing page with basic features.
6. Navigate to the “Applications” subpage of Stratos to get started
7. Click on the “+” at the top right of the interface to start deploying Caasperli
8. Choose “Public GitHub” to open the deployment wizard
9. Select a space (like “dev”) and click next to get started
10. Enter the “adfinis-sygroup/potz-holzoepfel-und-zipfelchape” name in the Project field and choose the master branch and click “Next”
11. Select the latest commit in the “Source Config” step and press “Next”
12. Activate the “Create a random route” Checkbox on the “Overrides” step and click “Deploy”
13. You can now watch how SUSE Cloud Application Platform deploys the application. Once the deployment is successful you can view the App Summary by clicking on “Go to App Summary”.
14. Navigate to the “Log Stream” in the App Summary to watch how SUSE Cloud Application Platform is spinning up Caasperli.
15. Once the Log shows “Container became healthy” you can navigate to the App by navigating back to the “Summary” and clicking the Visit () link.
16. You should now be greeted by a friendly Caasperli landing page
Well done, you’ve just deployed Caasperli!
In the next installment of this blog series we will be enhancing Caasperli with a backend that uses a service provided by the Developer Sandbox. Stay tuned.
Want to learn how this can help you to solve the dilemma between sales, development and system administration? Find out in our other blog post.