繁体   English   中英

如何在高山 linux 上安装 python?

[英]How do I install python on alpine linux?

如何在基于 alpine 的映像上安装 python3 和 python3-pip(不使用 python 映像)?

 $ apk add --update python3.8 python3-pip
 ERROR: unsatisfiable constraints:
   python3-pip (missing):
     required by: world[python3-pip]
   python3.8 (missing):
     required by: world[python3.8]

这是我在 Dockerfile 中用于高山图像的内容:

# Install python/pip
ENV PYTHONUNBUFFERED=1
RUN apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python
RUN python3 -m ensurepip
RUN pip3 install --no-cache --upgrade pip setuptools

看这里: https://pkgs.alpinelinux.org/packages所以你要找的是python3py3-pip包。

在 dockerfile/etc 中使用的合适命令是:

apk add --no-cache python3 py3-pip

--no-cache标志的解释

但是请注意,您需要添加社区存储库,因为main不存在py3-pip

你可以试试这个命令

APK添加python3

而不是python3-pip安装py3-pip

apk add --update python3 py3-pip

您可以使用 python 官方图像,它也提供 alpine 标签。 您可能会获得最先进的 python 安装:

例如:

FROM python:3-alpine

附加选项是在映像构建期间构建python:

FROM alpine:latest

# you can specify python version during image build
ARG PYTHON_VERSION=3.9.9

RUN apk add \
    wget \
    gcc \
    make \
    zlib-dev \
    libffi-dev \
    openssl-dev \
    musl-dev

RUN cd /opt \
    && wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz \
    && tar xzf Python-${PYTHON_VERSION}.tgz \
    && cd Python-${PYTHON_VERSION} \
    && ./configure --prefix=/usr --enable-optimizations --with-ensurepip=install \
    && make altinstall \
    && ln -s /usr/bin/python${PYTHON_VERSION:0:3} /usr/bin/python \
    && ln -s /usr/bin/pip${PYTHON_VERSION:0:3} /usr/bin/pip

# rest of the image, python and pip commands will be available

此代码段从源代码下载并构建指定版本的 python。 这可能有点矫枉过正,但有时它可能会派上用场。

看起来您正在尝试安装 Python3 (3.8) 的特定次要版本,您可以在 Alpine 中通过使用 semver 来执行此操作,这将安装python3>=3.8.0 <3.9.0-0的版本:

apk add python3=~3.8

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM