【发布时间】:2021-11-30 05:23:48
【问题描述】:
我在一个父级中有多个 Spring Boot 微服务,我可以运行 spring-boot:build-image 为所有模块构建 docker 映像。我正在使用我的 Windows WSL2 Ubuntu x86_64 和 Docker 引擎通过 IntelliJ 中的配置构建图像。
我在我的 Windows 机器上一切都很好,我可以成功启动容器,但我希望我的图像在我的 Raspberry Pi Ubuntu Server 21.04 架构 ARM64 上的容器中运行,并通过我的 Windows Docker Registry 拉取它们,所以我可以轻松地在本地传输图像。我的注册表也可以正常工作,但是我遇到了由于架构问题而无法启动映像的错误。
如何在 IntelliJ Maven 配置运行中更改 docker 镜像构建的架构?
我发现通过 Maven 配置 spring-boot 非常方便,它为构建镜像做了各种配置。我不知道如何使用 docker-compose.yml 或 Dockerfile 来成功构建映像。如果这是答案,我将把我的研究重点放在这个上面,但直到现在我还很困惑该怎么做。
我的感觉是 pom.xml 并在那里定义任何配置。我的 pom.xml 现在看起来像这样:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
问题编辑:
我看到你可以使用参数--platform=linux/arm64。我可以把它放在某个地方吗?
【问题讨论】:
-
尝试使用 Docker CLI 来完成这个任务。您可以在构建命令中使用 --build-arg ARCH=arm64v8。欲了解更多信息,请参阅这篇文章:docker.com/blog/multi-arch-build-and-images-the-simple-way我希望这可以帮助你
-
我在 docker 引擎上对我的图像执行的每个清单 CLI 都被拒绝访问。
标签: spring-boot docker maven intellij-idea