You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: documentation/image-artifact-details.md
+43-93Lines changed: 43 additions & 93 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ This document is intended to be complimentary to the [Instructions for Finding L
4
4
5
5
> [!WARNING]
6
6
> Distroless images require special treatment since they don't contain a shell by default.
7
-
> Please see [Distroless Images](#distroless-images) section below.
7
+
> See the [distroless images section](#distroless-images-and-appliance-images) below.
8
8
9
9
## .NET and Other Components
10
10
@@ -17,133 +17,83 @@ This document is intended to be complimentary to the [Instructions for Finding L
17
17
18
18
You can see these components installed in the [runtime](https://github.com/dotnet/dotnet-docker/blob/d90e7bd1d10c8781f0008f5ab1327ca3481e78de/src/runtime/8.0/bookworm-slim/amd64/Dockerfile#L6-L13), [aspnet](https://github.com/dotnet/dotnet-docker/blob/d90e7bd1d10c8781f0008f5ab1327ca3481e78de/src/aspnet/8.0/bookworm-slim/amd64/Dockerfile#L6-L12), and [sdk](https://github.com/dotnet/dotnet-docker/blob/d90e7bd1d10c8781f0008f5ab1327ca3481e78de/src/sdk/8.0/bookworm-slim/amd64/Dockerfile#L26-L48) Dockerfiles.
19
19
20
-
### .NET Runtime Image
20
+
### .NET Runtime and ASP.NET Core Images
21
21
22
-
The [.NET runtime image](../README.runtime.md)includes the .NET runtime, with an associated license and third party notice file.
22
+
The [runtime](../README.runtime.md)and [ASP.NET Core images](../README.aspnet.md) include a license and third party notice file.
The [SDK image](../README.sdk.md) includes the .NET SDK, which includes various .NET components, with associated licenses and third party notice files.
The commands listed above won't work when targeting a distroless image since distroless images don't contain a shell by default.
94
-
Instead, you can copy the distroless image's filesystem into a another image that does contain a shell and inspect it from there.
60
+
## Distroless Images and Appliance Images
95
61
96
-
This repo contains a [Dockerfile](./scripts/Dockerfile.distroless-wrapper) that takes a distroless container image as input.
97
-
The dockerfile copies the distroless image's entire filesystem into a non-distroless base image so that its contents can be inspected with shell scripts.
62
+
The commands listed above won't work when targeting a [distroless image](./distroless.md) since distroless images don't contain a shell by default.
63
+
Instead, this repo contains a [Dockerfile](./scripts/Dockerfile.distroless-wrapper) that copies a distroless image's entire filesystem into a non-distroless base image so that its contents can be easily inspected using a shell.
98
64
99
-
First, build the Dockerfile, specifying the distroless image tag you wish to inspect:
65
+
First, build the Dockerfile, specifying the distroless image tag you wish to inspect.
66
+
Cloning the repo or downloading the Dockerfile is not necessary.
Now that you've got the wrapper image, you can execute the [commands that are documented](https://github.com/dotnet/dotnet-docker/blob/main/documentation/image-artifact-details.md).
107
-
The only difference here is that you'll need to target the wrapper image instead.
108
-
109
-
For example, instead of executing this command as documented:
72
+
Now that you've got the wrapper image, you can execute the [commands that are documented](https://github.com/dotnet/dotnet-docker/blob/main/documentation/image-artifact-details.md) targeting the wrapper image instead:
.NET Monitor, Aspire Dashboard, and YARP images are all [distroless images](./distroless.md) and should be inspected the same way as other distroless .NET images.
126
83
127
-
The [.NET Monitor image](../README.monitor.md) includes .NET Monitor in addition to ASP.NET Core, with associated licenses and third party notice files. The .NET Monitor images are based on distroless ASP.NET Core images. As such, using the instructions from [Distroless Images](#distroless-images) is necessary to gather the license and notice file paths.
128
-
129
-
First, build the wrapper Dockerfile, specifying the image tag you wish to inspect:
84
+
Each appliance image includes its own license and third party notices files.
85
+
Appliance image binaries and metadata are located under the `/app` directory.
0 commit comments