Vinicius Ramos Apolinario
Windows Containers for IT Pros
Transitioning Existing Applications to Containers for On-premises, Cloud, or Hybrid
1st ed.
Logo of the publisher
Vinicius Ramos Apolinario
Newcastle, WA, USA
Any source code or other supplementary material referenced by the author in this book is available to readers on GitHub via the books product page, located at www.apress.com/9781484266854 . For more detailed information, please visit http://www.apress.com/source-code .
ISBN 978-1-4842-6685-4 e-ISBN 978-1-4842-6686-1
https://doi.org/10.1007/978-1-4842-6686-1
Vinicius Ramos Apolinario 2021
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, expressed or implied, with respect to the material contained herein or for any errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Distributed to the book trade worldwide by Springer Science+Business Media LLC, 1 New York Plaza, Suite 4600, New York, NY 10004. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springer-sbm.com, or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation.
To my wife, Marcia, who during the writing of this book gave me the best present ever: our baby girl, Julia! Thank you for your support, always! Love you!
Introduction
Have you ever looked into technical resources about how containers work and ended up on a Visual Studio Code demonstration? Well, thats because most of the content out there is focused on the developer audience. That doesnt mean IT Pros dont have a role here. In fact, running the infrastructure that supports containers, managing containers, and ensuring they run correctly and are properly managed are still important aspects that IT Pros play a part in.
This book is focused on the admins out there that are seeing the rise of containers and have Windows applications and infrastructure they need to support. How to transition to Windows containers? How to get started with it? What is Docker and Kubernetes? How can I use Azure to run containers? These are all questions that we will answer in this book.
Well start from the basics so you can get a lay of the land what containers are, what Docker is and how it works on Windows, and what the architecture of containers looks like on Windows and how it compares to regular virtual machines. Then we dive into how to use containers and Docker commands. From starting your first simple containers with nothing in them to more complex examples, well walk you through the process and explain what everything is and how it works in detail.
We then get serious with containers by moving existing applications into Windows containers and cover how to manage them once they are deployed. We cover how to interact with containers; how to manage devices, storage, and networking; and more. We then show how Windows Admin Center can be used to make some tasks easier in a friendly user interface.
Finally, we cover how to use Azure services to run your containers Azure VMs, Azure Container Registry, Azure Container Instances, App Service, and Azure Kubernetes Service so you can not only understand how Windows containers work but also feel confident to take on a new project and deploy your workloads in production using Windows containers!
Acknowledgments
Id like to first thank my wife Marcia for the amazing support throughout the process of writing this book. I accepted this project knowing she was pregnant and knowing I was not gonna be able to finish it before the baby arrived and even with that she, as always, supported me and incentivized me to go ahead with it.
I also want to thank my manager at Microsoft Taylor who also supported me in this process, even with the crazy amount of work we all have at Microsoft.
Table of Contents
About the Author
Vinicius Ramos Apolinario
is a Senior Program Manager on the Windows Container platform team at Microsoft the team that builds the container platform that runs on Windows Server and Azure. He has been a Microsoft professional for most of his career and holds multiple certifications from Microsoft, VMware, EXIN, and others. Vinicius is passionate about passing on his knowledge and contributes to the community via blogs, events, and articles. He is a published author who is regularly seen out in the community or at trade events presenting on various topics.
About the Technical Reviewer
Thomas Maurer
works as a Senior Cloud Advocate at Microsoft. He engages with the community and customers around the world to share his knowledge and collect feedback to improve the Azure cloud platform. Prior to joining the Azure engineering team (Cloud + AI), Thomas was a Lead Architect and Microsoft MVP, to help architect, implement, and promote Microsoft cloud technology.
If you want to know more about Thomas, check out his blog ( www.thomasmaurer.ch ) and Twitter ( www.twitter.com/thomasmaurer ).
Vinicius Ramos Apolinario 2021
V. Ramos Apolinario Windows Containers for IT Pros https://doi.org/10.1007/978-1-4842-6686-1_1
1. Introduction to containers
Vinicius Ramos Apolinario
Let me tell you a story:
John is an IT admin currently working for a medium company. He has been managing physical hosts and virtual machines (VMs) for a long time even before joining this company. John has worked with Active Directory, mail servers such as Microsoft Exchange, file servers, and many other infrastructure and networking components. One thing he learned over the years is the importance of keeping servers with the right configuration and only approved software installed. This has saved him in the past in audits and performance measurements, but also in keeping servers secure. Recently, John was put in a project alongside a development team to build a new module for their enterprise resource planning (ERP) system . His role in this project? Ensure servers are up and running with high availability (HA) and the new module is running as expected. After a couple weeks of meetings, development, and testing by the development and quality assurance (QA) teams, John has been handed the first version of the new module, along with a Word document describing how to deploy it. John follows the instructions on the Word doc how to configure the operating system (OS) , folder structure, and network and then, finally, install the .exe file. After installing, John sees a new icon on the desktop, which he then opens and guess what? One of the services in the application fails. Is this story familiar to you? Has that ever occurred to you? If the answer is yes, this book is for you.