Docker环境Ubuntu20.04安装Python3.10版本

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: Docker环境Ubuntu20.04安装Python3.10版本

背景和环境说明

随着Python3.8+不在维护,以及新的部署包逐渐不在支持Python3.8+,所以新的开发程序需要再Python3.10+版本,或其他版本上运行。
在开发完应用后,我需要打包成docker image, 用的基础镜像是 nvidia/cuda:11.7.1-cudnn8-devel-ubuntu20.04。默认Python环境仍然是Python3.8+。故本教程主要在此镜像基础上安装Python3.10版本。
原则上同样适用于其他Ubuntu等Linux系统

安装资源下载

Python各版本下载地址 Python官网

方案一,如果您的网络没有限制推荐此方案

  • 安装脚本
RUN apt-get update \
   && apt-get install -y git curl wget python3.10 libpython3.10-dev python3-pip \
   && apt-get install -y libgl1-mesa-glx libglib2.0-0 \
   && ln -sf /usr/bin/python3.10  /usr/bin/python3 \
   && ln -sf /usr/bin/python3.10  /usr/bin/python \
   && apt-get autoclean && rm -rf /var/lib/apt/lists/*

方案二,源码安装

  • 安装脚本

ADD https://www.python.org/ftp/python/3.10.14/Python-3.10.14.tgz /usr/local/Python-3.10.14.tgz

RUN tar -zxvf Python-3.10.14.tgz && cd Python-3.10.14 && apt-get update \
    && apt-get install -y gcc g++ make libncurses5-dev libgdbm-dev liblzma-dev libz-dev libffi-dev libreadline-gplv2-dev tk-dev libc6-dev zlib1g-dev \
    && apt-get install -y checkinstall libdb-dev libexpat1-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev libtinfo-dev libbz2-dev build-essential \
    && ./configure --prefix=/usr/local --enable-optimizations --with-ensurepip \
    && make -j4 && make install && cd ../ && rm -rf Python-3.10.14* \
    && apt-get autoclean && rm -rf /var/lib/apt/lists/*

验证

python3 -V

pip3 -V

单独安装pip

bash脚本

curl https://bootstrap.pypa.io/get-pip.py --output get-pip.py 
python3 get-pip.py
rm get-pip.py
ln -sf /usr/local/bin/pip3 /usr/bin/pip

Dockfile文件

RUN curl https://bootstrap.pypa.io/get-pip.py --output get-pip.py \
    && python3 get-pip.py && rm get-pip.py \
    && ln -sf /usr/local/bin/pip3 /usr/bin/pip \
    && apt-get autoclean && rm -rf /var/lib/apt/lists/*
目录
相关文章
|
30天前
|
人工智能 Python
【02】做一个精美的打飞机小游戏,python开发小游戏-鹰击长空—优雅草央千澈-持续更新-分享源代码和游戏包供游玩-记录完整开发过程-用做好的素材来完善鹰击长空1.0.1版本
【02】做一个精美的打飞机小游戏,python开发小游戏-鹰击长空—优雅草央千澈-持续更新-分享源代码和游戏包供游玩-记录完整开发过程-用做好的素材来完善鹰击长空1.0.1版本
54 7
|
2月前
|
Ubuntu Shell Linux
pyenv 管理多个 Python 版本(1)
pyenv 管理多个 Python 版本(1)
198 86
pyenv 管理多个 Python 版本(1)
|
2月前
|
Shell Python
使用 pyenv 来管理多个 Python 版本(2)
使用 pyenv 来管理多个 Python 版本(2)
127 71
使用 pyenv 来管理多个 Python 版本(2)
|
23天前
|
测试技术 Python
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
90 31
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
|
22天前
|
弹性计算 Ubuntu Java
OS-Copilot-ubuntu镜像版本的具体测试使用(安装方式有单独注明)
作为一名个人开发者,我主要负责云资源的运维和管理。在使用OS Copilot的过程中,我遇到了一些配置问题,特别是在ECS实例中设置AccessKey时,但最终成功解决了。通过使用OS Copilot的-t/-f/管道功能,我大大提升了效率,减少了命令编写的工作量,特别是在搭建Java运行环境时效果显著。此外,| 功能帮助我快速理解文档,整体体验非常流畅,推荐给其他开发者使用。
34 6
|
2月前
|
JSON Ubuntu 开发者
ubuntu 22安装lua环境&&编译lua cjson模块
通过上述步骤,可以在 Ubuntu 22.04 系统上成功安装 Lua 环境,并使用 LuaRocks 或手动编译的方式安装 lua-cjson 模块。本文详细介绍了每一步的命令和操作,确保每一步都能顺利完成,适合需要在 Ubuntu 系统上配置 Lua 开发环境的开发者参考和使用。
179 13
|
2月前
|
监控 关系型数据库 MySQL
Ubuntu24.04安装Librenms
此指南介绍了在Linux系统上安装和配置LibreNMS网络监控系统的步骤。主要内容包括:安装所需软件包、创建用户、克隆LibreNMS仓库、设置文件权限、安装PHP依赖、配置时区、设置MariaDB数据库、调整PHP-FPM与Nginx配置、配置SNMP及防火墙、启用命令补全、设置Cron任务和日志配置,最后通过网页完成安装。整个过程确保LibreNMS能稳定运行并提供有效的网络监控功能。
|
2月前
|
Ubuntu Linux Docker
Ubuntu22.04上Docker的安装
通过以上详细的安装步骤和命令,您可以在Ubuntu 22.04系统上顺利安装
1234 12
|
3月前
|
Ubuntu
ubuntu和debian 的安装包dpkg管理命令对安装包进行安装,查询,卸载
Ubuntu dpkg 软件包管理命令概览:安装、卸载、查看和配置软件包。包括解决依赖、强制卸载、列出及过滤已安装包、查看包详情等操作。
121 10
|
9月前
|
Ubuntu 网络安全 数据安全/隐私保护
百度搜索:蓝易云【docker通过dockerfile安装sftp教程。】
现在,你已经通过 Dockerfile 成功安装了 SFTP,并且可以使用指定的用户名和公钥进行远程访问。请确保替换示例中的用户名、密码和公钥为自己的实际值。
194 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等