gpt4 book ai didi

docker - Alpine Linux 如何在 x86_64 架构上安装 x86 软件包

转载 作者:行者123 更新时间:2023-12-02 06:39:41 27 4
gpt4 key购买 nike

我正在尝试在官方 alpine docker 镜像上安装 32 位软件包,但每当我执行 apk add libcurl 时,它都会安装 64 位版本的 libcurl,而我想安装 32 位软件包。有什么想法如何在 Alpine Linux 3.7 上做同样的事情吗?

最佳答案

实际上,只有一个文件定义了哪些包从 alpine 存储库中获取。它是/etc/apk/arch:

# cat /etc/apk/arch 
x86_64

它的值显示了我们应该从 alpine 仓库中获取哪些包:

# cat /etc/apk/repositories 
http://dl-cdn.alpinelinux.org/alpine/v3.7/main
http://dl-cdn.alpinelinux.org/alpine/v3.7/community

所以,我们可以在这里耍点小伎俩。我们可以“切换”alpine 以从存储库获取 x86 软件包:

/ # echo "x86" > /etc/apk/arch
/ # apk add --no-cache libcurl
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86/APKINDEX.tar.gz
(1/12) Replacing musl (1.1.18-r2 -> 1.1.18-r2)
(2/12) Replacing busybox (1.27.2-r8 -> 1.27.2-r8)
Executing busybox-1.27.2-r8.post-upgrade
(3/12) Replacing alpine-baselayout (3.0.5-r2 -> 3.0.5-r2)
Executing alpine-baselayout-3.0.5-r2.pre-upgrade
Executing alpine-baselayout-3.0.5-r2.post-upgrade
(4/12) Replacing libressl2.6-libcrypto (2.6.3-r0 -> 2.6.3-r0)
(5/12) Replacing libressl2.6-libssl (2.6.3-r0 -> 2.6.3-r0)
(6/12) Replacing zlib (1.2.11-r1 -> 1.2.11-r1)
(7/12) Replacing apk-tools (2.8.2-r0 -> 2.8.2-r0)
(8/12) Replacing scanelf (1.2.2-r1 -> 1.2.2-r1)
(9/12) Replacing musl-utils (1.1.18-r2 -> 1.1.18-r2)
(10/12) Installing ca-certificates (20171114-r0)
(11/12) Installing libssh2 (1.8.0-r2)
(12/12) Installing libcurl (7.57.0-r0)
Executing busybox-1.27.2-r8.trigger
Executing ca-certificates-20171114-r0.trigger
OK: 5 MiB in 14 packages

关于docker - Alpine Linux 如何在 x86_64 架构上安装 x86 软件包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48498881/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com