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
- When the domain is not present, `fossa-cli` defaults to the registry `index.docker.io`.
142
-
- When digest or tag is not present, `fossa-cli` defaults to the tag `latest`.
143
-
- When the registry is `index.docker.io`, and repository does not contain the literal `/`, `fossa-cli` infers that this is official image stored under `library/<image>`.
144
-
- When a multi-platform image is provided (e.g. `ghcr.io/graalvm/graalvm-ce:ol7-java11-21.3.3`), `fossa-cli` defaults to selecting image artifacts for current runtime platform.
141
+
- When the domain is not present, `fossa-cli` defaults to the registry `index.docker.io`.
142
+
- When digest or tag is not present, `fossa-cli` defaults to the tag `latest`.
143
+
- When the registry is `index.docker.io`, and repository does not contain the literal `/`, `fossa-cli` infers that this is official image stored under `library/<image>`.
144
+
- When a multi-platform image is provided (e.g. `ghcr.io/graalvm/graalvm-ce:ol7-java11-21.3.3`), `fossa-cli` defaults to selecting image artifacts for current runtime platform.
145
145
146
146
Analyzing the container image for a platform other than the one currently running is possible by specifying the digest for the image on a different platform.
147
147
148
148
For example, the following command analyzes the `arm64` platform image of `ghcr.io/graalvm/graalvm-ce@sha256` regardless of the platform running `fossa container analyze`:
`fossa-cli` uses `/v2/` registry api (per OCI distribution spec) for retrieving
185
+
`fossa-cli` uses `/v2/` registry api (per OCI distribution spec) for retrieving
186
186
image manifests, and image artifacts from registry. It does so in following manner:
187
187
188
188
1)`HEAD <repository>/manifests/<tag-or-digest>` (to see if the manifests exists)
@@ -194,20 +194,22 @@ image manifests, and image artifacts from registry. It does so in following mann
194
194
4) Download all blobs using `GET /v2/<repository>/blobs/<digest>` (if blobs are tar.gzip, they will be gzip extracted)
195
195
5) From artifacts downloaded representative image tarball will be created.
196
196
197
-
All `GET` request from step 2 to step 5, will make `HEAD` call prior to confirm existence of resource. If
197
+
All `GET` request from step 2 to step 5, will make a `HEAD` call prior to confirm existence of resource. If
198
198
401 status is received new access token will be generated using auth flow mentioned in step (1).
199
199
200
200
## Container image analysis
201
201
202
202
The container scanner scans in two steps:
203
203
1. The base layer.
204
-
2. The rest of the layers, squashed.
204
+
2. The rest of the layers, squashed.
205
205
206
206
### Container JAR analysis
207
207
208
208
The container analyzer will try to find Java Archive (Jar) files inside each layer.
209
209
It will then report them to FOSSA which will try to match the Jar files to the project they are a build artifact from.
210
210
211
+
The container analyzer will also expand each Jar file that it encounters and report any Jar files that it finds in the expanded Jar file. This is done recursively.
212
+
211
213
This process relies on there being a back-end that can perform that analysis.
212
214
SaaS customers should have this functionality available but on-prem customers may need to contact FOSSA support to have it enabled.
213
215
@@ -264,7 +266,7 @@ and if desired can inform [analysis target configuration](../../files/fossa-yml.
[ INFO] Exporting docker image to temp file: /private/var/folders/hb/pg5d0r196kq1qdswr6_79hzh0000gn/T/fossa-docker-engine-tmp-f7af2b5d1ec5173d/image.tar! This may take a while!
@@ -296,7 +298,7 @@ exclude:
296
298
297
299
### Debugging
298
300
299
-
`fossa-cli` supports the `--debug` flag and debug bundle generation with the container scanner.
301
+
`fossa-cli` supports the `--debug` flag and debug bundle generation with the container scanner.
300
302
301
303
```bash
302
304
fossa container analyze redis:alpine --debug
@@ -315,7 +317,7 @@ Images can be exported to archives using Docker:
315
317
docker pull <IMAGE>:<TAG> # or docker pull <IMAGE>@<DIGEST>
0 commit comments