如何在Ubuntu 18.04容器中配置Python3.10?求Dockerfile编写方案
在Ubuntu 18.04容器中部署Python 3.10的方案
能否在Ubuntu 18.04中部署Python 3.10?
可以。Ubuntu 18.04(Bionic Beaver)默认软件源仅包含最高Python 3.6版本,但可通过第三方PPA或源码编译的方式在其容器中安装Python 3.10。需要注意:Docker Hub上的python:3.10-bullseye或python:3.10-slim-bullseye镜像基于Debian 11(Bullseye),而非Ubuntu 18.04。如果需求是严格基于Ubuntu 18.04容器,建议在Ubuntu 18.04基础镜像上安装Python 3.10;若可接受Debian Bullseye作为基础镜像,直接使用官方Python镜像即可。
方案1:基于Ubuntu 18.04基础镜像安装Python 3.10
以下是对应的Dockerfile示例:
# 基于Ubuntu 18.04基础镜像 FROM ubuntu:18.04 # 更新系统并安装依赖 RUN apt-get update && apt-get install -y --no-install-recommends \ software-properties-common \ build-essential \ curl \ && add-apt-repository ppa:deadsnakes/ppa \ && apt-get update \ && apt-get install -y --no-install-recommends python3.10 python3.10-dev python3.10-distutils \ && rm -rf /var/lib/apt/lists/* # 设置Python 3.10为默认python3 RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1 # 安装适配Python 3.10的pip RUN curl https://bootstrap.pypa.io/get-pip.py | python3.10 # 验证版本 RUN python3 --version && pip --version
方案2:使用官方Python 3.10 Bullseye镜像(Debian 11基础)
若无需严格依赖Ubuntu 18.04环境,直接使用官方镜像更精简高效,以下是slim版本的Dockerfile示例:
# 使用Python 3.10 Bullseye slim镜像 FROM python:3.10-slim-bullseye # 验证Python版本 RUN python --version && pip --version # 在此添加你的应用部署步骤
注意事项
deadsnakes/ppa是Ubuntu社区维护的非官方源,提供多版本Python安装包,稳定性较高。- 源码编译Python 3.10步骤繁琐且会增大镜像体积,容器场景不推荐。
- 若应用依赖Ubuntu 18.04特定系统库或环境,必须选用方案1;仅需Python 3.10环境时,方案2的官方镜像维护性更好。
内容的提问来源于stack exchange,提问作者Suresh
相关产品推荐
相关产品推荐

