python - 如何在 docker 上安装 python 特定版本?

标签 python python-3.x docker installation deprecated

我需要在运行 ubuntu 16.04 的容器中安装 python 3.8.10。
16.04 不再支持,所以我需要一种手动安装它的方法。

最佳答案

这来自 here
将以下内容添加到您的 dockerfile 中,并根据需要更改 python 版本。
当 docker 启动时,python3.8将在 /usr/local/bin/python3.8 中提供

# compile python from source - avoid unsupported library problems
RUN apt update -y && sudo apt upgrade -y && \
    apt-get install -y wget build-essential checkinstall  libreadline-gplv2-dev  libncursesw5-dev  libssl-dev  libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev && \
    cd /usr/src && \
    sudo wget https://www.python.org/ftp/python/3.8.10/Python-3.8.10.tgz && \
    sudo tar xzf Python-3.8.10.tgz && \
    cd Python-3.8.10 && \
    sudo ./configure --enable-optimizations && \
    sudo make altinstall

请注意,由于支持终止,以下(标准安装方式)不适用于旧 ubuntu 版本
RUN apt-get update && \
    apt-get install -y software-properties-common && \
    add-apt-repository -y ppa:deadsnakes/ppa && \
    apt-get update && \
    apt install -y python3.8

关于python - 如何在 docker 上安装 python 特定版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70837456/

相关文章:

python - 如何在所有条形图子图上显示 x 轴标签?

python - 恢复交互 session 中意外覆盖的 `numpy.random.seed`

python - 删除/删除重复项,除非行包含特定字符串

python - 猴子修补时如何调用原始方法?

django - Django 在带有 nginx 的 docker 上未使用静态文件

python - 为什么我会收到 TypeError : unsupported operand type(s) for +

python - 在 MultiIndex 中为缺失日期插入 0 值

docker - 尝试运行 Envoy 前端代理示例时出现的问题

amazon-web-services - 确保 ECS 仅在新任务准备就绪时终止旧任务

Python 仅减去一次 (HH :MM:SS) from a DateTime Column