Skip to content

Commit 4d56184

Browse files
authored
Merge pull request dotnet#10604 from dotnet-architecture/docker-lifecycle/03.1-index
Containerized Docker Application Lifecycle - 03.1
2 parents 9e2b56e + 320325d commit 4d56184

File tree

1 file changed

+16
-19
lines changed
  • docs/standard/containerized-lifecycle-architecture/Microsoft-platform-tools-containerized-apps

1 file changed

+16
-19
lines changed

docs/standard/containerized-lifecycle-architecture/Microsoft-platform-tools-containerized-apps/index.md

Lines changed: 16 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,23 @@ title: Introduction to the Microsoft platform and tools for containerized apps
33
description: Get to know Microsoft's offerings to support Docker applications lifecycle.
44
author: CESARDELATORRE
55
ms.author: wiwagn
6-
ms.date: 11/23/2018
6+
ms.date: 02/15/2019
77
---
88
# Introduction to the Microsoft platform and tools for containerized apps
99

10+
*Vision: Create an adaptable, enterprise-grade, containerized application life cycle that spans your development, IT operations, and production management.*
1011

1112
Figure 3-1 shows the main pillars in the life cycle of Docker apps classified by the type of work delivered by multiple teams (app-development, DevOps infrastructure processes, and IT management and operations). Usually, in the enterprise, the profiles of "the persona" responsible for each area are different. So are their skills.
1213

13-
![](./media/image1.png)
14+
![Microsoft tools. For the Develop/Design workload: Docker engine for Windows, VS and VS Code, .NET Core, Azure Kubernetes Service. For the Build/Test/Ship workload: Azure DevOps, Team Foundation Server, Docker CLI, Azure Kubernetes Service. For the Run/Monitor/Manage workload: Application Insights, Azure Portal Azure Kubernetes Services, Service Fabric, other orchestrators.](./media/image1.png)
1415

15-
Figure 3-1: Main pillars in the life cycle for containerized Docker applications with Microsoft platform and tools
16+
**Figure 3-1.** Main pillars in the life cycle for containerized Docker applications with Microsoft platform and tools
1617

17-
A containerized Docker life cycle workflow can be initially prescriptive based on "by-default product choices," making it easier for developers to get started faster, but it is fundamental that under the hood there must be an open framework so that it will be a flexible workflow capable of adjusting to the different contexts from each organization or enterprise. The workflow infrastructure (components and products) must be flexible enough to cover the environment that each company will have in the future, even being capable of swapping development or DevOps products to others. This flexibility, openness, and broad choice of technologies in the platform and infrastructure are precisely the Microsoft priorities for containerized Docker applications, as explained in the chapters that follow.
18+
A containerized Docker life-cycle workflow can be initially prescriptive based on "by-default product choices," making it easier for developers to get started faster, but it is fundamental that under the hood there must be an open framework so that it will be a flexible workflow capable of adjusting to the different contexts from each organization or enterprise. The workflow infrastructure (components and products) must be flexible enough to cover the environment that each company will have in the future, even being capable of swapping development or DevOps products to others. This flexibility, openness, and broad choice of technologies in the platform and infrastructure are precisely the Microsoft priorities for containerized Docker applications, as explained in the chapters that follow.
1819

1920
Table 3-1 demonstrates that the intention of the Microsoft DevOps for containerized Docker applications is to provide an open DevOps workflow so that you can choose what products to use for each phase (Microsoft or third party) while providing a simplified workflow that provides "by-default-products" already connected; thus, you can quickly get started with your enterprise-level DevOps workflow for Docker apps.
2021

21-
Table 3-1: Open DevOps workflow to any technology
22+
**Table 3-1.** DevOps workflows, open to any technology
2223

2324
| Host | Microsoft technologies | Third-party—Azure pluggable |
2425
| ---------------------------| ----------------------------------------------------| --------------------------------------------------------------------------------|
@@ -28,30 +29,26 @@ Table 3-1: Open DevOps workflow to any technology
2829

2930
The Microsoft platform and tools for containerized Docker apps, as defined in Table 3-1, comprise the following components:
3031

31-
- **Platform for Docker Apps development** The development of a service, or collection of services that make up an "app." The development platform provides all the work developers requires prior to pushing their code to a shared code repository. Developing services, deployed as containers, are very similar to the development of the same apps or services without Docker. You continue to use your preferred language (.NET, Node.js, Go, etc.) and preferred editor or IDE like Visual Studio or Visual Studio Code. However, rather than consider Docker a deployment destination, you develop your services in the Docker environment. You build, run, test, and debug your code in containers locally, providing the destination environment at development time. By providing the destination environment locally, Docker containers set up what will drastically help you improve your DevOps life cycle. Visual Studio and Visual Studio Code have extensions to integrate Docker containers within your development process.
32+
- **Platform for Docker Apps development** The development of a service, or collection of services that make up an "app." The development platform provides all the work developers requires prior to pushing their code to a shared code repository. Developing services, deployed as containers, are similar to the development of the same apps or services without Docker. You continue to use your preferred language (.NET, Node.js, Go, etc.) and preferred editor or IDE like Visual Studio or Visual Studio Code. However, rather than consider Docker a deployment destination, you develop your services in the Docker environment. You build, run, test, and debug your code in containers locally, providing the destination environment at development time. By providing the destination environment locally, Docker containers set up what will drastically help you improve your DevOps life cycle. Visual Studio and Visual Studio Code have extensions to integrate Docker containers within your development process.
3233

33-
- **DevOps for Docker Apps** Developers creating Docker applications can use Azure DevOps Services or any other third-party product, like Jenkins, to build out a comprehensive automated application life cycle management (ALM).
34+
- **DevOps for Docker Apps** Developers creating Docker applications can use [Azure DevOps Services](https://azure.microsoft.com/services/devops/) or any other third-party product, like Jenkins, to build out a comprehensive automated application life-cycle management (ALM).
3435

35-
With Azure DevOps Services, developers can create container-focused DevOps for a fast, iterative process that covers source-code control from anywhere (Azure DevOps Services-Git, GitHub, any remote Git repository, or Subversion), Continuous Integration (CI), internal unit tests, inter container/service integration tests, Continuous Delivery (CD), and release management (RM). Developers also can automate their Docker application releases into Azure Container Service, from development to staging and production environments.
36-
37-
- IT production management and monitoring.
36+
With Azure DevOps Services, developers can create container-focused DevOps for a fast, iterative process that covers source-code control from anywhere (Azure DevOps Services-Git, GitHub, any remote Git repository, or Subversion), Continuous Integration (CI), internal unit tests, inter-container/service integration tests, Continuous Delivery (CD), and release management (RM). Developers also can automate their Docker application releases into Azure Container Service, from development to staging and production environments.
3837

39-
**Management** IT can manage production applications and services in several ways:
38+
- **Management and Monitoring** IT can manage and monitor production applications and services in several ways, integrating both perspectives in a consolidated experience.
4039

41-
- **Azure portal** If you're using open-source orchestrators, Azure Container Service (ACS) plus cluster management tools like Docker Datacenter and Mesosphere Marathon help you to set up and maintain your Docker environments. If you're using Azure Service Fabric, the Service Fabric Explorer tool makes it possible for you to visualize and configure your cluster.
40+
- **Azure portal** If you're using open-source orchestrators, Azure Kubernetes Service (AKS), Service Fabric and other orchestrators help you to set up and maintain your Docker environments. If you're using Azure Service Fabric, the Service Fabric Explorer tool makes it possible for you to visualize and configure your cluster.
4241

43-
- **Docker tools** You can manage your container applications using familiar tools. There's no need to change your existing Docker management practices to move container workloads to the cloud. Use the application management tools you're already familiar with and connect via the standard API endpoints for the orchestrator of your choice. You also can use other third-party tools to manage your Docker applications, such as Docker Datacenter or even CLI Docker tools.
42+
- **Docker tools** You can manage your container applications using familiar tools. There's no need to change your existing Docker management practices to move container workloads to the cloud. Use the application management tools you're already familiar with and connect via the standard API endpoints for the orchestrator of your choice. You also can use other third-party tools to manage your Docker applications, such as Docker Datacenter or even CLI Docker tools.
4443

45-
- **Open-source tools** Because ACS exposes the standard API endpoints for the orchestration engine, the most popular tools are compatible with ACS and, in most cases, will work out of the box—including visualizers, monitoring, command-line tools, and even future tools as they become available.
44+
Even if you're familiar with Linux commands, you can manage your container applications using Microsoft Windows and PowerShell with a Linux Subsystem command line and the products (Docker, Kubernetes…) clients running on this Linux Subsystem capability. You will learn more about using these tools under Linux Subsystem using your favorite Microsoft Windows OS later in this book.
4645

47-
**Monitoring** While running production environments, you can monitor every angle by using the following:
46+
- **Open-source tools** Because AKS exposes the standard API endpoints for the orchestration engine, the most popular tools are compatible with AKS and, in most cases, will work out of the box—including visualizers, monitoring, command-line tools, and even future tools as they become available.
4847

49-
- **Operations Management Suite (OMS)** The "OMS Container Solution" can manage and monitor Docker hosts and containers by showing information about where your containers and container hosts are, which containers are running or failed, and Docker daemon and container logs. It also shows performance metrics such as CPU, memory, network, and storage for the container and hosts to help you troubleshoot and find noisy neighbor containers.
50-
51-
- **Application Insights** You can monitor production Docker applications by simply setting up its SDK into your services so that you can get telemetry data from the applications.
48+
- **Application Insights** Is Azure's soution to monitor every angle of your production evironment. You can monitor production Docker applications by just setting up its SDK into your services so that you can get system-generated log data from the applications.
5249

5350
Thus, Microsoft offers a complete foundation for an end-to-end containerized Docker application life cycle. However, it is *a collection of products and technologies that allow you to optionally select and integrate with existing tools and processes*. The flexibility in a broad approach along with the strength in the depth of capabilities place Microsoft in a strong position for containerized Docker application development.
5451

5552
>[!div class="step-by-step"]
5653
>[Previous](../Docker-application-lifecycle/containers-foundation-for-devops-collaboration.md)
57-
>[Next](../design-develop-containerized-apps/index.md)
54+
>[Next](../design-develop-containerized-apps/index.md)

0 commit comments

Comments
 (0)