Skip to content

Instantly share code, notes, and snippets.

View MichaelSimons's full-sized avatar

Michael Simons MichaelSimons

View GitHub Profile
@MichaelSimons
MichaelSimons / RetrievingDockerImageSizes.md
Last active March 25, 2024 11:14
Retrieving Docker Image Sizes

Retrieving Docker Image Sizes

There are two metrics that are important to consider when discussing the size of Docker images.

  1. Compressed size - This is often referred to as the wire size. This affects how fast/slow images can be pulled from a registry. This impacts the first run experience on machines where images are not cached.
  2. Uncompressed size - This is often referred to as the size on disk. This affects how much local storage is required to support your Docker workloads.

The example commands shown below will work on Windows, MacOS, and Linux.

How to Measure the Compressed Size

@MichaelSimons
MichaelSimons / announcement.md
Last active February 21, 2023 17:50
.NET 8.0 Preview 1 release - .NET 8.0.0-preview.1 and SDK 8.0.100-preview.1

Title: .NET 8.0 Preview 1 release - .NET 8.0.0-preview.1 and SDK 8.0.100-preview.1

Please use the v8.0.100-preview.1 tag to source-build .NET version 8.0.0-preview.1 / 8.0.100-preview.1.

Virtual Mono Repository (VMR)

.NET is now buildable on Linux directly from the dotnet/dotnet repository. We're calling this new repository a Virtual Mono Repository (VMR). It has the benefits of a true monorepo but is a regularly-updated projection of the many existing repos that contributors work in (more efficiently) every day. We see this new approach as being a significant step forward in approachabi

src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.0.0/Microsoft.Bcl.AsyncInterfaces.1.0.0.csproj
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.0.0/microsoft.bcl.asyncinterfaces.nuspec
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.0.0/ref/net461/Microsoft.Bcl.AsyncInterfaces.cs
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.0.0/ref/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.cs
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.0.0/ref/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.cs
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.1.0/Microsoft.Bcl.AsyncInterfaces.1.1.0.csproj
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.1.0/microsoft.bcl.asyncinterfaces.nuspec
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.1.0/ref/net461/Microsoft.Bcl.AsyncInterfaces.cs
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.1.0/ref/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.cs
src/referencePackages/src/microsoft.bcl.asyncinterfaces/1.1.0/
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/Microsoft.AspNetCore.App.Ref.3.0.0.csproj
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/Microsoft.AspNetCore.App.Ref.nuspec
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/[Content_Types].xml
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/_rels/.rels
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/data/FrameworkList.xml
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/data/PackageOverrides.txt
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/data/PlatformManifest.txt
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/package/services/metadata/core-properties/9a442a032f8d4bc6834710ba1d21eca6.psmdcp
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/ref/netcoreapp3.0/Microsoft.AspNetCore.Antiforgery.il
src/targetPacks/ILsrc/microsoft.aspnetcore.app.ref/3.0.0/ref/netcoreapp3.0/Microsoft.AspNetCore.Antiforgery.xml
src/textOnlyPackages/src/microsoft.build.traversal/2.1.1/LICENSE.txt
src/textOnlyPackages/src/microsoft.build.traversal/2.1.1/MSBuild-NuGet-Icon.png
src/textOnlyPackages/src/microsoft.build.traversal/2.1.1/Sdk/Sdk.props
src/textOnlyPackages/src/microsoft.build.traversal/2.1.1/Sdk/Sdk.targets
src/textOnlyPackages/src/microsoft.build.traversal/2.1.1/microsoft.build.traversal.2.1.1.csproj
src/textOnlyPackages/src/microsoft.build.traversal/2.1.1/microsoft.build.traversal.nuspec
src/textOnlyPackages/src/microsoft.dotnet.common.itemtemplates/3.1.10/Icon.png
src/textOnlyPackages/src/microsoft.dotnet.common.itemtemplates/3.1.10/content/Gitignore/.gitignore
src/textOnlyPackages/src/microsoft.dotnet.common.itemtemplates/3.1.10/content/Gitignore/.template.config/dotnetcli.host.json
src/textOnlyPackages/src/microsoft.dotnet.common.itemtemplates/3.1.10/content/Gitignore/.template.config/template.json
@MichaelSimons
MichaelSimons / Fedora.35.md
Created March 29, 2021 21:08
Fedora 35 - source-built .NET installed via Fedora native package feed

Fedora 35 - source-built .NET installed via Fedora native package feed

>dotnet --info
.NET SDK (reflecting any global.json):
 Version:   5.0.104
 Commit:    ca6b6acadb

Runtime Environment:
 OS Name:     fedora
@MichaelSimons
MichaelSimons / Proposal.md
Last active January 8, 2021 14:20
Proposed policy change for the NuGet CLI version included in the sdk images

Proposed policy change for the NuGet CLI version included in the sdk images

We are proposing a policy change for which NuGet CLI (i.e. NuGet.exe) version is included in the sdk images. The proposal is to align the NuGet CLI version with the version of NuGet bundled within MSBuild and the .NET CLI included in the sdk images.

If you are using the NuGet CLI you may be impacted by this change. If you are using NuGet via MSBuild or the .NET CLI you will not be affected by this change.

Details

Current Policy

@MichaelSimons
MichaelSimons / dotnet-core.csv
Last active March 11, 2020 21:03
dotnet docker layer info
sha256:ac83054b3424623b270bcb14f800447c5fb834837a5a07610e6502b051eedb56 amd64 linux Debian 10 3.0.3 3.0/runtime-deps/buster-slim/amd64/Dockerfile dotnet/core/runtime-deps 3/11/2020 13:52
3.0.3-buster-slim amd64 linux Debian 10 3.0.3 3.0/runtime-deps/buster-slim/amd64/Dockerfile dotnet/core/runtime-deps 3/11/2020 13:52
3.0-buster-slim amd64 linux Debian 10 3.0.3 3.0/runtime-deps/buster-slim/amd64/Dockerfile dotnet/core/runtime-deps 3/11/2020 13:52
3.1.2-buster-slim amd64 linux Debian 10 3.0.3 3.0/runtime-deps/buster-slim/amd64/Dockerfile dotnet/core/runtime-deps 3/11/2020 13:52
3.1-buster-slim amd64 linux Debian 10 3.0.3 3.0/runtime-deps/buster-slim/amd64/Dockerfile dotnet/core/runtime-deps 3/11/2020 13:52
sha256:a06dd4359bed5b56bb2cf90765dd1e97b8a4c66b7634d8732b5fa7640e782560 amd64 linux Alpine 3.10 3.0.3 3.0/runtime-deps/alpine3.10/amd64/Dockerfile dotnet/core/runtime-deps 3/11/2020 13:52
3.0.3-alpine3.10 amd64 linux Alpine 3.10 3.0.3 3.0/runtime-deps/alpine3.10/amd64/Dockerfile dotnet/core/runtime-deps 3/11
@MichaelSimons
MichaelSimons / dotnet-framework.csv
Last active March 11, 2020 19:56
dotnet-layer-info
We can make this file beautiful and searchable if this error is corrected: It looks like row 6 should actually have 8 columns, instead of 6. in line 5.
sha256:ca895ab76f1d3ab95f022cbca076e06b62daebafe61af34212bb3ed1fe982d78,amd64,windows,Windows Server 2016,4.8,4.8/runtime/windowsservercore-ltsc2016/Dockerfile,dotnet/framework/runtime,2020-03-11 13:52:00
4.8-20200211-windowsservercore-ltsc2016,amd64,windows,Windows Server 2016,4.8,4.8/runtime/windowsservercore-ltsc2016/Dockerfile,dotnet/framework/runtime,2020-03-11 13:52:00
4.8-windowsservercore-ltsc2016,amd64,windows,Windows Server 2016,4.8,4.8/runtime/windowsservercore-ltsc2016/Dockerfile,dotnet/framework/runtime,2020-03-11 13:52:00
sha256:4308c89ceac1a04af04590ecc56f2f3784ab1fdd21811a6426766cc817bcf9e5,amd64,windows,"Windows Server, version 1903",3.5,3.5/runtime/windowsservercore-1903/Dockerfile,dotnet/framework/runtime,2020-03-11 13:52:00
3.5-20200211-windowsservercore-1903,amd64,windows,"Windows Server, version 1903",3.5,3.5/runtime/windowsservercore-1903/Dockerfile,dotnet/framework/runtime,2020-03-11 13:52:00
3.5-windowsservercore-1903,amd64,windows,"Windows Server, version 1903",3.5,3.5/runtime/window
@MichaelSimons
MichaelSimons / dotnet-core-release-test-plan.md
Last active January 23, 2020 18:54
.NET Core Release Test Plan

.NET Core Release Test Plan

Releasing .NET Core is a complex process involving many components, dependencies on external systems and different teams. With the growing usage and success of .NET Core, it is critical that we are able to release with confidence. This requires us to take necessary steps to validate each release was completed as expected. Ideally we would always release the product without issues but that has not been the case so far. We need tests in place to identify issues so that they can be addressed as part of the release tic-toc before customers are impacted.

This document describes how to validate .NET Core releases. This document describes at a broad level what should be validated. It is not intended to describe the minute details.

The document breaks down the items to validate into the following broad groups.

  • Acquisition Artifacts - The primary ways customers acquire the product. e.g. Native Installers
  • Auxiliary Artifacts - Auxiliary artifacts used with product. e.g. NuGet Pac