Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Docker on Windows

You're reading from   Docker on Windows From 101 to production with Docker on Windows

Arrow left icon
Product type Paperback
Published in Feb 2019
Publisher Packt
ISBN-13 9781789617375
Length 428 pages
Edition 2nd Edition
Tools
Arrow right icon
Author (1):
Arrow left icon
Elton Stoneman Elton Stoneman
Author Profile Icon Elton Stoneman
Elton Stoneman
Arrow right icon
View More author details
Toc

Table of Contents (18) Chapters Close

Preface 1. Section 1: Understanding Docker and Windows Containers FREE CHAPTER
2. Getting Started with Docker on Windows 3. Packaging and Running Applications as Docker Containers 4. Developing Dockerized .NET Framework and .NET Core Applications 5. Sharing Images with Docker Registries 6. Section 2: Designing and Building Containerized Solutions
7. Adopting Container-First Solution Design 8. Organizing Distributed Solutions with Docker Compose 9. Orchestrating Distributed Solutions with Docker Swarm 10. Section 3: Preparing for Docker in Production
11. Administering and Monitoring Dockerized Solutions 12. Understanding the Security Risks and Benefits of Docker 13. Powering a Continuous Deployment Pipeline with Docker 14. Section 4: Getting Started on Your Container Journey
15. Debugging and Instrumenting Application Containers 16. Containerize What You Know - Guidance for Implementing Docker 17. Other Books You May Enjoy

Separating dependencies

In the last chapter I Dockerized the legacy NerdDinner app and got it running, but without a database. The original application expected to use SQL Server LocalDB on the same host where the app is running. LocalDB is an MSI-based installation, and I can add it to the Docker image by downloading the MSI and installing it with RUN commands in the Dockerfile. But this means that when I start a container from the image, it has two functions: hosting a web application and running a database.

Having two functions in one container is not a good idea. What would happen if you wanted to upgrade your website without changing the database? Or what if you needed to do some maintenance on the database, which didn't impact the website? What if you need to scale out the website? By coupling the two functions together, you've added deployment risk, test effort...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image