如何解決docker鏡像在不同cpu架構(gòu)上運(yùn)行容器報(bào)錯(cuò)問(wèn)題
docker鏡像在不同cpu架構(gòu)上運(yùn)行容器報(bào)錯(cuò)
如果是在 x86 架構(gòu)機(jī)器上制作的鏡像, 如果沒(méi)有指定操作系統(tǒng),docker 會(huì)根據(jù)宿主機(jī)的 cpu 架構(gòu)自動(dòng)選擇對(duì)應(yīng)架構(gòu)的版本。
這會(huì)導(dǎo)致一個(gè)問(wèn)題, x86 做的鏡像無(wú)法在 arm cpu 上運(yùn)行.
如何查看你在本地鏡像的 cpu 架構(gòu)類型?
docker inspect [鏡像 ID]
信息中有: "Architecture", "Os" 這兩個(gè)可以確定當(dāng)前鏡像的 cpu 架構(gòu).
"Architecture": "arm64", "Variant": "v8", "Os": "linux",
解決這個(gè)問(wèn)題
需要在構(gòu)建鏡像時(shí)指定 cpu 架構(gòu)
原來(lái)我們?cè)?Dockerfile 引入基礎(chǔ)包是下面這樣:
FROM node:14.18.3-alpine3.15
需要添加參數(shù) "--platform" 用來(lái)指定 cpu 架構(gòu)類型
FROM --platform=linux/arm64 node:14.18.3-alpine3.15
該參數(shù)的值需要去 hub.docker.com 查找對(duì)應(yīng)包的 "OS/ARCH" 信息

這樣,就可以制作指定 cpu 架構(gòu)的鏡像了
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
部署維護(hù)docker環(huán)境的詳細(xì)教程
這篇文章主要介紹了部署維護(hù)docker環(huán)境的詳細(xì)教程,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-02-02
使用docker創(chuàng)建集成服務(wù)lnmp環(huán)境
本篇文章主要介紹了使用docker創(chuàng)建集成服務(wù)lnmp環(huán)境,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
Docker常見(jiàn)命令整理匯總(包括鏡像命令、容器命令)
這篇文章主要給大家介紹了關(guān)于Docker常見(jiàn)命令整理匯總的相關(guān)資料,包括鏡像命令、容器命令等等,通過(guò)一個(gè)個(gè)示例來(lái)加深各位看官對(duì)docker相關(guān)命令的理解以及記憶,需要的朋友可以參考下2022-07-07
iptables使用及docker的iptables規(guī)則
Docker在創(chuàng)建容器時(shí),會(huì)自動(dòng)添加一些iptables規(guī)則來(lái)實(shí)現(xiàn)網(wǎng)絡(luò)隔離和轉(zhuǎn)發(fā)等功能,本文主要介紹了iptables使用及docker的iptables規(guī)則,具有一定的參考價(jià)值,感興趣的可以了解一下2023-12-12
docker安裝influxdb的詳細(xì)教程(性能測(cè)試)
這篇文章主要介紹了docker安裝influxdb的詳細(xì)教程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07
docker生產(chǎn)環(huán)境jvm性能優(yōu)化方式
這篇文章主要介紹了docker生產(chǎn)環(huán)境jvm性能優(yōu)化方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08

