最近在macbook m1芯片尝试搭建docker环境,发现有些镜像拉取下来竟然启动不了,后面发现是m1芯片和intel芯片存在一些区别。

m1芯片的架构跟intel不同,他是需要linux/arm64/v8的镜像

所以我们只能通过命令带上--platform=linux/amd64来制定某种镜像。

比如下载镜像的时候 ,可以强制拉取适用于其他架构的镜像(比如 linux/amd64)

这样拉取的镜像会通过 Rosetta 2 模拟运行,可能会有性能损失。

拉取镜像命令:

docker pull --platform=linux/amd64 wujunwei928/parse-video-py

启动容器命令:

docker run --platform=linux/amd64 -d -p 8000:8000 wujunwei928/parse-video-py

运行容器也需要带上--platform=linux/amd64

让 Docker 知道运行的是非原生架构的镜像,使用 linux/amd64 镜像时,Docker 在 M1 芯片上依赖 Rosetta 2 模拟运行

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐