Docker - 在 Alpine 发行版上安装 Alpine 存储库中不可用的软件包

Docker - Installing packages on Alpine distro that aren't available in the Alpine repository

我在 Alpine 发行版上有一个 docker 图像 运行,为了让我的一个要求工作 - pocketsphinx==0.1.15,我必须在我的内部安装一些依赖项Docker 文件:

FROM python:3.7-alpine

RUN apk update && \
    apk add --virtual build-deps gcc musl-dev && \
    apk add --no-cache postgresql-dev && \
    apk add ffmpeg && \     
    apk add swig && \
    apk add libasound2-dev && \
    rm -rf /var/cache/apk/*

幸运的是,ffmpeg 和 swig 都在 Alpine 包存储库中可用,但不幸的是 libasound2-dev 不可用。我试图避免从 Alpine 发行版转移到 Ubuntu 但我不确定是否有可能在 Alpine 图像上安装 libasound2-dev。有没有办法做到这一点?谢谢!

有时软件包在发行版之间有不同的名称。在您的情况下,提供这些头文件的包是 alsa-lib-dev.

大家可以在他们网站上对比一下包裹内容自行查看。

https://pkgs.alpinelinux.org/contents?file=&path=&name=alsa-lib-dev&branch=v3.9&repo=main&arch=x86_64

https://packages.ubuntu.com/bionic/amd64/libasound2-dev/filelist