-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #8 from philspokas/session-7-updates
Session 7 updates
- Loading branch information
Showing
4 changed files
with
113 additions
and
28 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# Container Exercises | ||
Create and run containers. Pre-built images and custom built are used | ||
|
||
Pre-requisites for local operations | ||
* Docker Desktop | ||
|
||
Pre-requisites for deploying containers to Azure | ||
* Azure subscription | ||
* Azure Container Registry is created and available | ||
|
||
## Getting Started with Containers | ||
* Follow [Develop with containers](https://docs.docker.com/get-started/introduction/develop-with-containers/) | ||
* Note that an LAMP stack application and tech stack can be run | ||
* Containers created in virtual network | ||
* Data volume for sql data created | ||
* React, Node, php | ||
* Traefik reverse proxy | ||
* Mysql | ||
* After running ```docker compose watch``` note containers running in Docker Desktop | ||
* Run ```docker compose down``` noting containers are shutdown and removed | ||
|
||
## Create and deploy .NET Container | ||
|
||
### Publish | ||
* Production and SDK images | ||
* "Chiseled" container images contain minimal components | ||
|
||
1. Use dotnet publish to build a container image [Step by step](https://learn.microsoft.com/en-us/dotnet/core/docker/introduction?view=vs-2022#building-container-images) | ||
- note container ddetails in Docker Desktop | ||
- review [Docker coommand line options](https://docs.docker.com/reference/cli/docker/container/run/) | ||
1. Use ```docker init``` to generate default Dockerfile and compose.yaml | ||
|
||
### Containerize | ||
1. Follow [step by step](https://learn.microsoft.com/en-us/dotnet/core/docker/build-container?view=vs-2022&tabs=windows&pivots=dotnet-8-0) to containerize a .NET appp | ||
- note multi-stage build process using sdk image and runtime image | ||
1. Use ```docker run -it --entrypoint=sh counter-image``` to inspect contents | ||
|
||
## Publish App | ||
https://learn.microsoft.com/en-us/dotnet/core/docker/publish-as-container?pivots=dotnet-8-0 | ||
|
||
## Publish to Azure | ||
1. Push to ACR | ||
https://learn.microsoft.com/en-us/azure/container-registry/container-registry-get-started-docker-cli?tabs=azure-cli | ||
|
||
1. Deploy to Azure Container Instance | ||
|
||
https://learn.microsoft.com/en-us/azure/container-instances/container-instances-tutorial-prepare-app | ||
1. Deploy to Azure Container App | ||
|
||
1. Build pipeline to deploy | ||
|
||
## Containerize Coalesce | ||
1. Generate simple widgets app | ||
https://intellitect.github.io/Coalesce/stacks/vue/getting-started.html | ||
1. Use Publish to run in a continer | ||
1. Use Docker init and Docker Compose to add database service container | ||
1. Push to Azure | ||
|
||
## AKS w/ Bicep | ||
https://learn.microsoft.com/en-us/azure/aks/learn/quick-kubernetes-deploy-bicep | ||
|
||
## AKS w/ Terraform | ||
https://learn.microsoft.com/en-us/azure/aks/learn/quick-kubernetes-deploy-terraform | ||
|
||
## Azure Container Apps | ||
https://learn.microsoft.com/en-us/azure/container-apps/quickstart-code-to-cloud?tabs=bash%2Ccsharp&pivots=with-dockerfile | ||
|
||
## Multi-container builds | ||
https://docs.docker.com/build/building/multi-platform/ | ||
https://devblogs.microsoft.com/dotnet/improving-multiplatform-container-support/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# Collaborating through source control and work items | ||
|
||
### How Microsoft Develops | ||
* Be familiar with Microsoft approach to dev by reviewing [How Microsoft develops with DevOps | ||
]https://learn.microsoft.com/en-us/devops/develop/how-microsoft-develops-devops()) | ||
|
||
### Work Management Lab | ||
* Verify understanding by working through this Microsoft Learning lab: [Review Work Management](https://microsoftlearning.github.io/AZ400-DesigningandImplementingMicrosoftDevOpsSolutions/Instructions/Labs/AZ400_M01_L01_Agile_Plan_and_Portfolio_Management_with_Azure_Boards.html) | ||
|
||
### Branching Styles Learn Module | ||
* Verify understanding and rational for branch styles: [Design and Implement Branch Strategies](https://learn.microsoft.com/en-us/training/modules/manage-git-branches-workflows/) | ||
|
||
### Practice exam! | ||
* Take a practice exam to gain an understanding of what will be covered and self-assess your knowledge level [assessment]( https://learn.microsoft.com/en-us/credentials/certifications/exams/az-400/) | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# Tests and test results | ||
|
||
## Setup | ||
Exercises below will use a Coalesce gnerated app. What the app does is not important it is only used to demonstrate the concepts. | ||
|
||
If you already have an application deployed that can be used you can save yourself some time. However, we do want to keep the solution small in order to focus on the testing topic. | ||
|
||
## Unit Tests | ||
- Small, fast, cheap to execute | ||
- do not require a deployed environment | ||
|
||
1. E | ||
|
||
## Integration Tests | ||
Hit api endpoints that exercise | ||
|
||
## Functional Tests | ||
Playwright | ||
Executing manual tests with Azure Tests | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters