Hands on workshop describing how to use the Steeltoe components in developing .NET applications for Cloud Foundry.
The workshop provides users with a solid understanding of the tools and techniques used to build enterprise-class ASP.NET applications on Cloud Foundry.
It covers topics such as:
- Pivotal Cloud Foundry & Services
- Micro-services using ASP.NET Core
- Centralized application configuration
- Service discovery
- Horizontal scaling
- Fault tolerance using Circuit Breakers
- Security
- Production Management & Monitoring
When following the workshop, you incrementally build and deploy a sample application (i.e. Fortune Teller) which employs all of above tools & techniques.
Start by checking out this repository. This can be accomplished either through the GitHub website or if you have Git installed, use the following commands:
> git clone https://github.com/SteeltoeOSS/Workshop
> cd Workshop
- Cloud Foundry CLI
- Git Client
- .NET Core SDK 2.0
- Visual Studio Code or Visual Studio 2017
- Java 8 JDK - Optional, needed to run Eureka and Config servers locally
Follow the steps in Lab 0 to get everything installed and verified.
-
The descriptions for each lab can be found in each labXX directory. (e.g. Lab05 Description)
-
The completed workshop code for each lab can be found in each labXX directory. (e.g. Lab5 Completed Code)
-
The final completed workshop code can be found in the Final directory.
-
When starting with the labs for the section Building Fortune Teller Application (i.e. Lab5-Lab11), you should start with the code in the Start directory.
-
You can find the instructors Slides in the repository.
-
The outline for the workshop:
Intro to Pivotal Cloud Foundry
- Lab 0 - Install Prerequisites & Log into Cloud Foundry
- Lab 1 - Running .NET Application on Cloud Foundry
- Lab 2 - Creating and Binding to Cloud Foundry Services
- Lab 3 - Scaling and Operating Applications
- Lab 4 - Monitoring Applications
Building Fortune Teller Application
- Lab 5 - ASP.NET Core Programming Fundamentals
- Lab 6 - Centralized Application Configuration - Config Server
- Lab 7 - Service Discovery - Eureka Server
- Lab 8 - Scaling Horizontally - Redis and Mysql Services
- Lab 9 - Fault Tolerance & Monitoring - Hystrix Circuit Breakers
- Lab 10 - Securing Application Endpoints - OAuth2 and JWT Tokens
- Lab 11 - Production Monitoring & Management - Pivotal Apps Manager