Docker(Apple Silicon/M1预览版)Sonarqube“清单列表条目中没有与Linux/arm64/V8匹配的清单”

svmlkihl  于 2022-10-04  发布在  Docker
关注(0)|答案(5)|浏览(155)

这是我的YAML文件。

文件名-docker-compose.mysonar.yml

version: '2'
services:
    my-sonar:
        image: sonarqube:7.1
        ports:
            - 9001:9000

当我运行docker-compose-f docker-compose.mysonar.yml up时,抛出错误--“在清单列表条目中没有匹配的Linux/arm64/v8清单”。

我该怎么解决这个问题?

eit6fx6z

eit6fx6z1#

--平台Linux/x86_64

对于无法工作的命令,请使用上面的标志。

例如。

docker run --platform linux/x86_64 sonarqube

希望它能有所帮助:)

14ifxucb

14ifxucb2#

Apple M1芯片是基于ARM的架构。当我们运行带有--platform linux/x86_64选项的docker时,它是在qemu仿真上运行的,这不会给我们带来最佳性能。要获取更多信息,请查看docker apple-silicon docs

要获得M1芯片的本机性能,您可以执行以下操作。

1.使用Sonarqube Dockerfile在APPLIE SLICON上构建自己的Sonarqube图像。

git clone https://github.com/SonarSource/docker-sonarqube
cd docker-sonarqube/9/community

# build

docker build -t sonarqube-arm .

# run

docker run -d -p 9000:9000 sonarqube-arm

1.您可以使用我最近在AWS基于ARM的服务器上构建的基于ARM的sonarqube docker镜像。

docker run -d -p 9000:9000 koolwithk/sonarqube-arm:9.2.4-community
9cbw7uwe

9cbw7uwe3#

只需将该平台添加到docker-compose.yml文件中,如下所示

platform: linux/amd64

Docker-compose.yml

version: '2'

services:
  my-sonar:
      image: sonarqube:7.1
      platform: linux/amd64
      ports:
        - 9001:9000
63lcw9qa

63lcw9qa4#

该repo中的所有图像在linux/amd64的清单列表中都有一个清单。您可以尝试直接查看它是否与虚拟化一起运行。7.1的标签目前是:

sonarqube@sha256:e36dcf59f4da62694a6e8265e6c56ca18596f59880f4cb6dd2c9efc6e0022405

否则,您可以尝试为您的平台构建映像,但是上游映像似乎表明这是not supported,而他们是won't fix it for the M1's either

ymzxtsji

ymzxtsji5#

你可以用这张图片,它很管用

mwizner/sonarqube

相关问题