Andrew Lock: Containers in .NET 8 – Episode 281

Challenges

  • Managing container image size and complexity.
  • Ensuring compatibility and performance across different environments.
  • Integrating new features in .NET 8 with existing workflows.

Solutions

  • Utilizing .NET runtime features to optimize container images.
  • Implementing best practices for containerization and deployment.
  • Leveraging tools like Docker and Kubernetes for seamless integration.

Benefits

  • Reduced container image size and improved performance.
  • Enhanced compatibility and flexibility in development.
  • Streamlined workflows with integrated tools and platforms.

Andrew Lock is a senior software engineer at Datadog, working out of Devon, in the UK. He is a Microsoft MVP, Author of ASP.NET Core in Action, and has an active blog all about his experience working with .NET and ASP.NET Core.

Topics of Discussion:
[03:08] What is Andrew working on these days?
[03:42] The push towards open telemetry in .NET and the ecosystem in general.
[04:49] In Andrew’s opinion, open telemetry is ready for use, but there is still much to learn.
[06:58] The state of containers for .NET developers.
[09:48] The use of chiseled containers.
[15:46] Using chiseled containers for that extra level of security.
[17:01] The different levels of chiseling.
[19:04] What does it mean to be a self-contained ASP.NET application?
[23:52] Other big container changes, including running as a non-root user and the default port inside the Docker container changing.
[28:18] Port 8080 and the user App.
[30:12] Windows containers for testing.
[33:14] The repeatability of Dockers containers.