我們正在使用 Windows 和 Mac M1 機器使用 Docker 進行本地開發,并且需要在我們的 docker 環境中獲取和安裝 .deb 包。
該軟體包需要 amd64/arm64,具體取決于所使用的架構。
有沒有辦法在 docker 檔案中確定這一點,即
if xyz === 'arm64'
RUN wget http://...../arm64.deb
else
RUN wget http://...../amd64.deb
uj5u.com熱心網友回復:
首先,您需要檢查是否沒有其他(更簡單的)方法可以使用包管理器來做到這一點。
您可以使用該arch命令獲取架構(相當于uname -m)。問題是它沒有回傳您期望的值(aarch64而不是arm64和x86_64而不是amd64)。所以你必須轉換它,我已經通過sed.
RUN arch=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/amd64/) && \
wget "http://...../${arch}.deb"
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/382094.html
