我应该将哪个软件安装程序与 Alpine 一起使用?

我应该将哪个软件安装程序与 Alpine 一起使用?

我正在试验 Python Docker 容器,它似乎使用 Alpine Linux。我对 Alpine 不熟悉,也没有看到它被列为安装软件的选项。

在 Alpine 上,我应该遵循 RedHat、Debian、Fedora、Ubuntu 或 SUSE 的软件安装说明吗?

答案1

我正在试验 Python Docker 容器,它似乎使用 Alpine Linux。

没有,只有python:alpine容器是基于Alpine的,,python都是python:slim基于debian的。

在 Alpine 上,我应该遵循 RedHat、Debian、Fedora、Ubuntu 或 SUSE 的软件安装说明吗?

都不是。

您需要知道如何在 Alpine 上安装软件。这与以上所有内容都不同。

如果您不熟悉 Alpine,您选择的容器可能不适合您。而不是python:alpine简单地使用python, python:slim.

答案2

这取决于你所说的软件。如果它是由 管理的软件pip,那么这在 Alpine Linux 上的工作方式可能与在pip安装的任何其他系统上的工作方式相同,并且假设您正在使用该python:alpine容器,pip本身已经安装了

当安装其他(非Python)软件包时,例如curl或其他软件包,Alpine Linux 系统使用自己独特的软件包管理器,称为apk(Alpine Package Keeper)。它的工作方式与yum或以及其他包管理器略有不同apt,但对于基本用法来说相当直观。这个网站不是提供教程的地方,所以我建议您改为仔细阅读一下靠你自己。您可能需要注意的唯一一件事是,在使用不同包管理工具的系统之间,包的命名可能略有不同,并且包的可用性或特定版本的包可能会有所不同。

$ docker run --rm --tty --interactive python:alpine /bin/sh
/ # apk update
fetch https://dl-cdn.alpinelinux.org/alpine/v3.18/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.18/community/x86_64/APKINDEX.tar.gz
v3.18.3-108-g8b22d1676dc [https://dl-cdn.alpinelinux.org/alpine/v3.18/main]
v3.18.3-110-g94f9602df3e [https://dl-cdn.alpinelinux.org/alpine/v3.18/community]
OK: 20064 distinct packages available
/ # apk add curl
(1/6) Installing brotli-libs (1.0.9-r14)
(2/6) Installing libunistring (1.1-r1)
(3/6) Installing libidn2 (2.3.4-r1)
(4/6) Installing nghttp2-libs (1.55.1-r0)
(5/6) Installing libcurl (8.2.1-r0)
(6/6) Installing curl (8.2.1-r0)
Executing busybox-1.36.1-r2.trigger
OK: 19 MiB in 44 packages
/ # curl --version
curl 8.2.1 (x86_64-alpine-linux-musl) libcurl/8.2.1 OpenSSL/3.1.2 zlib/1.2.13 brotli/1.0.9 libidn2/2.3.4 nghttp2/1.55.1
Release-Date: 2023-07-26
Protocols: dict file ftp ftps gopher gophers http https imap imaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli HSTS HTTP2 HTTPS-proxy IDN IPv6 Largefile libz NTLM NTLM_WB SSL threadsafe TLS-SRP UnixSockets

相关内容