分类: Linux运维

在CTYunOS(天翼云定制OS)部署Python编写的WEB应用

荒废的博客…嗐

系统版本:

盖了帽儿了,官方包管理Python最高版本只支持到3.7.9,应用编写环境Python版本3.12.4

想着凑合一下,结果某些库版本太老,代码要大改…

搜索发现似乎是基于CentOS深度定制的,想要使用CentOS包安装新版Python,失败

于是只能自行编译Python

下面交给Gemini:

这个过程需要几个步骤:准备系统、下载源码、配置编译,最后安装。


步骤 1: 安装编译依赖

在编译 Python 之前,你需要确保系统安装了必要的开发工具和库。

运行以下命令来安装主要的依赖项。wget 用于下载文件,gcc 是 C 语言编译器,其余是 Python 编译所需的库。(Gemini给的不全,比如SQLite的支持没有安装上会导致编译出来的Python SQLite相关支持出现问题,下面为补充全的版本)

sudo yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel wget gcc

步骤 2: 下载 Python 3.12.4 源码

接下来,从 Python 官方网站下载源码包。你可以使用 wget 命令,它会自动从指定的 URL 下载文件。

首先,切换到一个你想存放源码的目录,比如 /usr/src

cd /usr/src

然后下载源码包:

sudo wget https://www.python.org/ftp/python/3.12.4/Python-3.12.4.tgz

下载完成后,解压文件:

sudo tar -xf Python-3.12.4.tgz

步骤 3: 配置和编译

现在进入解压后的源码目录,并开始配置编译。

进入目录:

cd Python-3.12.4

运行 configure 脚本来配置编译选项。使用 --prefix 参数可以指定 Python 的安装路径。我们这里选择 /usr/local/python3.12,这样做的好处是不会覆盖或影响系统自带的 Python 版本。

--enable-optimizations 选项会开启一系列编译时优化,可以显著提升 Python 的性能。

sudo ./configure --prefix=/usr/local/python3.12 --enable-optimizations

配置完成后,开始编译和安装。make -j$(nproc) 会利用所有可用的 CPU 核心进行并行编译,从而加快速度。使用 make altinstall 而不是 make install 是一个非常重要的最佳实践,它可以避免覆盖系统默认的 python3 软链接,防止系统组件出现问题

sudo make -j$(nproc)
sudo make altinstall

步骤 4: 创建软链接并验证

安装完成后,你可以创建一个软链接,让你可以更方便地从命令行调用新版本的 Python。

创建软链接,将新版本的 python3pip 链接到 /usr/bin

sudo ln -s /usr/local/python3.12/bin/python3.12 /usr/bin/python3.12
sudo ln -s /usr/local/python3.12/bin/pip3.12 /usr/bin/pip3.12

最后,验证安装是否成功:

python3.12 --version

如果命令返回 Python 3.12.4,那么恭喜你,新版本的 Python 已经成功编译并安装好了。现在你可以在你的项目中使用它,并通过 pip3.12 来安装依赖。

成功部署~配置venv,运行脚本,一气呵成~

但是80&443端口不知为何无法访问(已开防火墙),后续更新…

PS:操作系统为纯国产全过程自主研发,以上凡涉及基于XX定制、采用XX内核等内容均为口误XD,侵删(联系邮箱ch939367561@hotmail.com)

双网口机器固定ip失效

注意网口是否插错?不同口mac不同

Ubuntu 根目录扩容

ubuntu扩容根目录_Fzuim的博客-CSDN博客

Powered by WordPress & Theme by Anders Norén