Docker


Docker for Developers: Understanding the Core Concepts

This post is based on a section from my Docker for Web Developers course on Pluralsight. Introduction Docker and containers in general continue to receive a lot of attention, and it’s well-deserved. But, you may have found yourself wondering, “What exactly is Docker? Can it be useful for developers like me?” When I first encountered Docker at conferences and user group talks, I wondered whether it had a place in my overall work flow and how I’d use it in different environments such as development, staging, and production. But as I dug deeper, I discovered that Docker can significantly impact […]


Video: Building and Running Custom ASP.NET Core Containers

I recently had the opportunity to do a webinar for Pluralsight where I talked about how you can use Docker to build and run custom ASP.NET Core containers. The containers can be run locally on your machine, on a company server within an on-prem data center, or even in the cloud. Here are the specific topics that I covered in this session: Docker Concept Review Docker and ASP.NET Core Creating a Custom Dockerfile Multi-Stage Dockerfiles Running ASP.NET Core Containers in Azure You can view the recording from the webinar below. The slides from the presentation can be found here. Building […]


New Pluralsight Course – Kubernetes for Developers: Deploying Your Code

I’m excited to announce the release of my next course on Pluralsight titled Kubernetes for Developers: Deploying Your Code! This course is the next in the Kubernetes for Developers learning path and focuses on different techniques that can be used to deploy your containerized applications to Kubernetes. It follows the Kubernetes for Developers: Core Concepts course. Here’s the recommended order for taking my courses that cover containers and Kubernetes: Docker for Web Developers Kubernetes for Developers: Core Concepts Kubernetes for Developers: Deploying Your Code Here are a few questions this course will help you answer: What is a Kubernetes Deployment […]


Enabling Metrics Server for Kubernetes on Docker Desktop

Lately we’ve been working on a new Docker and Kubernetes instructor-led training class that we’ll be running onsite at several companies this year. The class uses Docker Desktop and the Kubernetes features it provides for several of the chapters. We needed to get the local cluster students will use to match as closely as possible to a cloud-based Kubernetes cluster that would be found on Azure, AWS, or GCP. The class covers using AKS as well, but most of the lab exercises rely on Kubernetes in Docker Desktop so running key features like the dashboard and Metrics API was important. […]


Using the Docker "before" Filter to Remove Multiple Images

I recently needed to cleanup a bunch of old Docker images on a VM that I run in Azure. While I could remove each image one by one using the standard docker rmi [IMAGE IDS] command, removing multiple images all at once as a batch was preferable. It turns out that removing a specific range of images is fairly straightforward using the “before” filter. You can do the following to list all images that exist before a particular image: Running the command will show all of the images that existed before the danwahlin/nginx-codelabs:1.15 image (basically the older images). Once you […]


New Pluralsight Course – Kubernetes for Developers: Core Concepts

I’m excited to announce the release of my next course on Pluralsight titled Kubernetes for Developers: Core Concepts! Since creating the Docker for Web Developers course I’ve been wanting to create a course that takes developers to the “next level” with containers and the new Kubernetes for Developers course does that! Here are a few questions this course will help you answer: Why should I learn about Kubernetes if I’m a developer? What are the core concepts that I should know about to get started? How can I get Kubernetes running on my development machine? What is the role of […]


Deploying Your Angular Apps (using containers) – ngVikings Talk

I had the opportunity to attend and speak at ngVikings this year in Copenhagen, Denmark which was a lot of fun. Copenhagen is a beautiful city and the conference organizers did a great job putting the event together. One of the talks I gave at the conference covered deploying Angular applications using containers. While the focus was on Angular and any services it may call, the concepts can really be applied to any front-end back-end application or service. Topics covered in the talk include: Deployment Challenges What is Docker? Images and Containers Orchestration with Docker Compose Orchestration with Kubernetes (introductory […]


Docker for Web Developers – Now with Kubernetes!

Over the past year I’ve done several big updates to my Docker for Web Developers course on Pluralsight that I wanted to mention. First, all of the code samples have been updated and Docker Desktop (formerly called Community Edition) is now covered in addition to Docker Toolbox. The biggest update came when I added a new module into the course titled “Moving to Kubernetes”. This module provides an overview of Kubernetes and what it is (a very exciting technology!), examples of using key Kubernetes commands, and an example of moving the Docker Compose orchestrated application shown in the course to […]


4 kubectl Commands to Help Debug Pod Issues in Kubernetes

If you’ve worked with containers a lot you’re probably good at commands like docker logs and docker exec to retrieve information about containers that may be having problems. One of the challenges that comes up as people move to Kubernetes is understanding how to get similar details about Pods and any containers running within them. I’ve had several people ask me about this recently in my instructor-led Kubernetes course as well as online with my Docker for Web Developers course (which has a module on Kubernetes) so I decided to post a few of the initial commands you can use […]


Docker Volumes and “print working directory” Command Syntax

I often use Docker to run an application in a container as I’m writing and testing code. That involves creating a volume that points the container to a path on my machine. The challenge with setting up volumes is that the “print working directory” command that is often used to easily identify the location of your source code on the host machine is different depending on what command terminal you’re using (especially on Windows). Here’s a quick summary that shows the syntax for “print working directory” in different command terminals when using volumes (if you’re new to volumes you can read […]