如何在 alpine linux 中离线安装 .apk 文件?

lai*_*nan 8 offline docker alpine-linux alpine-package-keeper

我基于 alpine Linex 的 docker 镜像无法从网络获取任何内容。所以命令“apk add xxx”是有效的。现在我的想法是下载 .apk 文件并将其复制到 docker 容器中。但如何安装 .apk 文件?

fqu*_*nto 6

接下来的步骤对我来说很好:

  1. 获取“在线”Alpine 机器并下载软件包。示例是“zip”和“rsync”包:

    • 更新您的系统:sudo apk update
    • 仅下载此软件包:apk fetch zip rsync
  2. 您将获得此文件(或者可能是实际版本):

    • zip-3.0-r8.apk
    • rsync-3.1.3-r3.apk
  3. 将此文件上传到“离线”Alpine 机器。

  4. 安装apk包:

    sudo apk add --allow-untrusted zip-3.0-r8.apk sudo apk add --allow-untrusted rsync-3.1.3-r3.apk

更多信息: https: //wiki.alpinelinux.org/wiki/Alpine_Linux_package_management


nis*_*yal 5

假设您正在尝试在 Alpine 中安装 glibc

将软件包下载到当前目录

wget "https://circle-artifacts.com/gh/andyshinn/alpine-pkg-glibc/6/artifacts/0/home/ubuntu/alpine-pkg-glibc/packages/x86_64/glibc-2.21-r2.apk"
wget "https://circle-artifacts.com/gh/andyshinn/alpine-pkg-glibc/6/artifacts/0/home/ubuntu/alpine-pkg-glibc/packages/x86_64/glibc-bin-2.21-r2.apk"
Run Code Online (Sandbox Code Playgroud)

然后,使用带有 --allow-untrusted 标志的 apk

apk add --allow-untrusted glibc-2.21-r2.apk glibc-bin-2.21-r2.apk
Run Code Online (Sandbox Code Playgroud)

并完成安装(仅本例需要)

/usr/glibc/usr/bin/ldconfig /lib /usr/glibc/usr/lib
Run Code Online (Sandbox Code Playgroud)