<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://blog.jojijohn.com/docker/docker-part1-docker-desktop/</loc><lastmod>2025-11-15T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/docker-part2-linux-primitives/</loc><lastmod>2025-11-16T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/devops/</loc><lastmod>2024-01-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/docker-part3-docker-architecture/</loc><lastmod>2025-11-17T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/cloud/</loc><lastmod>2024-01-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/docker-part4-runtime-confusion/</loc><lastmod>2025-11-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/kubernetes/</loc><lastmod>2024-01-25T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/docker-part5-containerd-vs-crio/</loc><lastmod>2025-11-19T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/docker-part6-kubernetes-and-docker/</loc><lastmod>2025-11-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/docker-part7-podman/</loc><lastmod>2025-11-21T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/docker-part8-docker-vs-podman/</loc><lastmod>2025-11-22T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/docker-part9-production-stack/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/categories/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/cloud/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/containerd/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/containers/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/categories/docker/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/docker/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/kubernetes/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/production/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/</loc><lastmod>2025-11-23T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/comparison/</loc><lastmod>2025-11-22T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/devtools/</loc><lastmod>2025-11-22T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/podman/</loc><lastmod>2025-11-22T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/red-hat/</loc><lastmod>2025-11-21T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/rootless/</loc><lastmod>2025-11-21T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/dockershim/</loc><lastmod>2025-11-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/cri-o/</loc><lastmod>2025-11-19T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/runtime/</loc><lastmod>2025-11-19T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/oci/</loc><lastmod>2025-11-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/runc/</loc><lastmod>2025-11-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/architecture/</loc><lastmod>2025-11-17T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/cgroups/</loc><lastmod>2025-11-16T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/chroot/</loc><lastmod>2025-11-16T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/linux/</loc><lastmod>2025-11-16T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/namespaces/</loc><lastmod>2025-11-16T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/docker-desktop/</loc><lastmod>2025-11-15T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/macos/</loc><lastmod>2025-11-15T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/resource-management/</loc><lastmod>2025-11-15T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/async/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/await/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/concurrency/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/csharp/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/diagnostics/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/categories/dotnet/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/dotnet/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/iocp/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/monitoring/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/parallel/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/async-concurrency-part1-threading-fundamentals/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/async-concurrency-part2-async-await-fundamentals/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/async-concurrency-part3-async-and-threads-truth/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/async-concurrency-part4-parallel-processing/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/async-concurrency-part5-advanced-performance/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/async-concurrency-part6-os-threading-and-thread-pools/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/async-concurrency-part7-thread-internals-and-monitoring/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/performance/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/pipelines/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/plinq/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/task/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/threading/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/threadpool/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/threads/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/tpl/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/valuetask/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/windows/</loc><lastmod>2025-10-10T00:00:00-04:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/dotnet-ecosystem/</loc><lastmod>2025-01-06T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/maintainer-sustainability/</loc><lastmod>2025-01-06T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/open-source/</loc><lastmod>2025-01-06T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/oss-going-commercial-forking-wont-save-you/</loc><lastmod>2025-01-06T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/software-licensing/</loc><lastmod>2025-01-06T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/devops/</loc><lastmod>2024-01-28T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/optimization/</loc><lastmod>2024-01-28T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/docker/optimizing-docker-images/</loc><lastmod>2024-01-28T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/security/</loc><lastmod>2024-01-28T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/container-orchestration/</loc><lastmod>2024-01-25T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/k8s/</loc><lastmod>2024-01-25T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/categories/kubernetes/</loc><lastmod>2024-01-25T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/microservices/</loc><lastmod>2024-01-25T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/kubernetes/production-k8s-patterns/</loc><lastmod>2024-01-25T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/minimal-apis-dotnet/</loc><lastmod>2024-01-22T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/dotnet-8/</loc><lastmod>2024-01-22T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/minimal-apis/</loc><lastmod>2024-01-22T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/web-api/</loc><lastmod>2024-01-22T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/aws/</loc><lastmod>2024-01-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/best-practices/</loc><lastmod>2024-01-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/categories/cloud/</loc><lastmod>2024-01-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/cloud-architecture/</loc><lastmod>2024-01-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/cloud/aws-well-architected/</loc><lastmod>2024-01-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/infrastructure/</loc><lastmod>2024-01-20T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/automation/</loc><lastmod>2024-01-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/devops/github-actions-cicd/</loc><lastmod>2024-01-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/ci-cd/</loc><lastmod>2024-01-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/categories/devops/</loc><lastmod>2024-01-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/github-actions/</loc><lastmod>2024-01-18T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/dotnet/dependency-injection-best-practices/</loc><lastmod>2024-01-15T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/dependency-injection/</loc><lastmod>2024-01-15T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/design-patterns/</loc><lastmod>2024-01-15T00:00:00-05:00</lastmod></url><url><loc>https://blog.jojijohn.com/tags/dotnet-core/</loc><lastmod>2024-01-15T00:00:00-05:00</lastmod></url></urlset>