极狐GitLab 正式推出面向 GitLab 老旧版本(12.x、13.x、14.x、15.x 等)免费用户的专业升级服务,点击查看详情
您需要 登录 才可以下载或查看,没有账号?注册
docker pull registry.gitlab.com/security-products/license-finder:latest
导入镜像可以考虑采用 docker save 、docker load 等方式,这需要考虑离线环境中的网络限制。
gitlab-runner的默认镜像拉取策略为 always,在离线环境中无法拉取镜像会导致任务失败。修改拉取策略为 if-not-present。
修改示例:
[runners.docker] tls_verify = false image = "alpine:latest" privileged = false disable_entrypoint_overwrite = false oom_kill_disable = false disable_cache = false volumes = ["/cache"] shm_size = 0 pull_policyi = if-not-present
license合规扫描作业不依赖于流水线中的任何其他作业。
示例:
$ .gitlab-ci.yml stages: - test include: - template: License-Scanning.gitlab-ci.yml
如果您想使用本地私有化的扫描库,可能需要做额外的配置。详细可以参阅:https://docs.gitlab.com/ee/user/compliance/license_compliance/index.html#set-license-compliance-cicd-variables-to-use-local-license-compliance-analyzers
默认的license扫描每次都会从公网拉取扫描镜像,则每次运行时都是最新数据。如果在离线环境中运行license扫描,因为是固定的扫描镜像,所以扫描数据不会更新,需要您关注镜像数据更新并在合适的时间更新到您的离线环境中。
离线扫描时,可能会在扫描日志中出现连接超时的现象。
这个现象是因为镜像无法连接到外部的lincense 发行说明校验地址,无法获取到最新的数据,这并不会影响扫描结果,只是扫描的数据来源于本地的扫描镜像,无法利用最新的license扫描数据。
离线环境中使用私有扫描库可能存在安全风险,这需要您根据实际情况来判定处理。具体的情况请参阅:https://docs.gitlab.com/runner/security/index.html#usage-of-private-docker-images-with-if-not-present-pull-policy
使用道具 举报
5
10
58