FluffySpoon is a set of microservices using .NET Core 3+ and Microsoft Orleans 3+ for demo purposes. This project includes the base template to create a basic service using these technologies.
For more information about dotnet new
templates see here.
Use the NuGet package identifier to install a template package.
dotnet new -i fluffyspoon.template
Once installed, all available templates, including the fluffyspoon ones will be listed:
Templates Short Name Language Tags
-----------------------------------------------------------------------------------------------------------
Console Application console [C#], F#, VB Common/Console
Class library classlib [C#], F#, VB Common/Library
WPF Application wpf [C#], VB Common/WPF
WPF Class library wpflib [C#], VB Common/WPF
WPF Custom Control Library wpfcustomcontrollib [C#], VB Common/WPF
WPF User Control Library wpfusercontrollib [C#], VB Common/WPF
Windows Forms (WinForms) Application winforms [C#], VB Common/WinForms
Windows Forms (WinForms) Class library winformslib [C#], VB Common/WinForms
Worker Service worker [C#] Common/Worker/Web
FluffySpoon Orleans Silo fs-silo [C#] Solution/Project/Orleans/Silo
Unit Test Project mstest [C#], F#, VB Test/MSTest
To apply an update to previously installed templates, use this command:
dotnet new --update-apply
If you need to set back your dotnet new list to "factory defaults", use this command:
dotnet new --debug:reinit
To create a solution using the template, use this command:
dotnet new fs-silo -n fluffyspoon.email --short-name email
All the below services are based on this microservice template!
- Registration: Source Code
- Profile: Source Code
- User Verification: Source Code
- Email: Source Code
To run all the services together:
# Download source code
git clone https://github.com/cdemi/fluffy-spoon.git
git clone https://github.com/cdemi/fluffy-spoon-profile.git
git clone https://github.com/cdemi/fluffy-spoon-userverification.git
git clone https://github.com/cdemi/fluffy-spoon-email.git
# Build docker images
docker-compose -f fluffy-spoon/docker/docker-compose.yml build
docker-compose -f fluffy-spoon-profile/docker/docker-compose.yml build
docker-compose -f fluffy-spoon-userverification/docker/docker-compose.yml build
docker-compose -f fluffy-spoon-email/docker/docker-compose.yml build
# Run Containers
docker-compose -f fluffy-spoon/docker/docker-compose.yml \
-f fluffy-spoon-profile/docker/docker-compose.yml \
-f fluffy-spoon-userverification/docker/docker-compose.yml \
-f fluffy-spoon-email/docker/docker-compose.yml up