更新.gitlab-ci.yml执行SAST时拉取镜像失败求助
解决GitLab CI/CD拉取Maven镜像失败的问题
问题根源
镜像标签不存在
你指定的maven:3.8.6-openjdk-11-sliim不是Docker Hub官方Maven镜像的合法标签,Docker daemon找不到对应的镜像manifest,导致拉取失败。官方Maven镜像的OpenJDK标签格式为maven:<maven版本>-openjdk:<jdk版本>,maven:3.8.6-openjdk-11是官方存在的有效镜像。Maven命令参数错误
你的script命令中Dsonar.organization缺少前缀-D,这会导致SonarQube无法识别该参数,后续扫描环节会报错。
修正后的配置
stages: - runSAST run-sast-job: stage: runSAST image: maven:3.8.6-openjdk-11 script: | mvn verify package sonar:sonar -Dsonar.host.url=https://sonarcloud.io/ -Dsonar.organization=myorganization -Dsonar.projectKey=myprojectkey -Dsonar.login=mytoken
额外提示
如果坚持使用带sliim后缀的镜像,需确认该镜像是否存在于你的私有镜像仓库,且GitLab Runner有权限访问该仓库。优先使用官方镜像可以避免这类镜像不存在的问题,同时稳定性更有保障。
内容的提问来源于stack exchange,提问作者codestein
相关产品推荐
相关产品推荐

