我的Dockerfile可以在x86机器上工作,但在arm64
架构的机器上失败;特别是在a1.2xlarge
(aws EC2-instance
)上。
运行docker compose up -d
时出错
#0 0.462 exec /bin/sh: exec format error
------
failed to solve: executor failed running [/bin/sh -c apt-get update]: exit code: 1
停靠文件如下所示
FROM phusion/passenger-ruby27
ENV HOME /root
RUN apt-get update
坞站-v
Docker version 20.10.17, build 100c701
uname -a
Linux Ubuntu SMP Thu Jun 9 13:06:11 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux
lsb_版本-a
Ubuntu 20.04.4 LTS
1条答案
按热度按时间xpcnnkqh1#
phusion/passenger-ruby27存储库通过标签分离基于arm64的图像(截至2022年11月)。
即2.3.1和2.3.1-arm64
假设您要在arm64示例上构建一个arm64映像,解决此问题的一个简单方法是将标记作为构建参数传递。