当前位置: 首页 > news >正文

宝塔面板多Python版本管理与项目部署


宝塔面板多Python版本管理与项目部署

在宝塔面板环境中进行Python项目部署时,最常见的挑战是版本冲突:系统自带的Python版本(如3.6)过低,无法满足项目依赖(如需要Python >= 3.10)的要求。

我们将严格按照以下步骤,从安装新版Python到正确创建和管理虚拟环境,确保您的项目能在正确的环境中顺利运行。


1. 在宝塔面板中安装并管理多版本Python

目标:为项目准备一个符合要求的、高版本的Python解释器。

为什么? 宝塔面板所在的操作系统(如CentOS 7)自带的Python 3.6.x是系统底层工具(如yum)的依赖,绝对不能直接替换或升级。正确的做法是安装一个全新的、独立的高版本Python,供我们的项目专用。

操作步骤:

  1. 登录您的宝塔面板。
  2. 进入 “软件商店” -> “应用搜索” -> 搜索并打开 “Python环境管理器”
  3. 点击 “版本管理” 标签页。
  4. 在下拉列表中,选择您需要的Python版本。根据我们的实践经验,3.10.x 是当前兼容性最好、最稳定的版本。点击“安装”。
  5. 等待安装完成。现在,您的服务器上已经同时存在了系统自带的Python 3.6和我们新安装的Python 3.10,它们互不干扰。

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fimg.bt.cn%2Fnew%2F2021%2F08%2F11%2F5f58d7c4c3e8e.png&pos_id=img-J94RokNo-1755498438601) *(图片为示意,请以您的面板为准)*


2. 使用指定的新版本Python创建虚拟环境

目标:创建一个只属于我们项目的、基于Python 3.10的纯净工作环境。

为什么? 直接使用系统默认的python3命令创建虚拟环境,会继承Python 3.6,导致项目无法运行。我们必须精确地“告诉”系统,使用我们刚刚安装的Python 3.10来创建环境。

操作步骤:

  1. 找到新版Python的“身份证”——可执行文件路径
    通过SSH登录服务器,使用find命令查找Python 3.10的安装位置。这是最关键的一步。

    find /www -name "python3.10"
    

    您会得到一个类似这样的路径,请复制并记下它:
    /www/server/pyporject_evn/versions/3.10.13/bin/python3.10

  2. (可选)为新版Python设置一个永久别名(快捷方式)
    为了方便日后使用,可以给这个长长的路径起一个短名字,比如py10

    # 将别名配置写入环境变量文件
    echo "alias py10='/www/server/pyporject_evn/versions/3.10.13/bin/python3.10'" >> ~/.bashrc# 立即生效
    source ~/.bashrc
    

    现在,您在任何地方输入 py10 -V,都应该能看到 Python 3.10.13 的输出。

  3. 创建虚拟环境
    进入您的项目目录(例如 /www/wwwroot/markitdown_service),然后执行创建命令。

    • 方法一(推荐,最清晰):使用完整路径
      /www/server/pyporject_evn/versions/3.10.13/bin/python3.10 -m venv venv
      
    • 方法二(如果您设置了别名):使用别名
      py10 -m venv venv
      

    执行后,您的项目目录下会多出一个名为venv的文件夹,这就是基于Python 3.10的全新虚拟环境。


3. 激活环境、安装依赖与测试

目标:在正确的环境中,完成项目的配置和首次运行。

操作步骤:

  1. 激活新环境并验证版本

    # 激活
    source venv/bin/activate# 验证,这是“验明正身”的关键一步
    python -V
    ```此时,终端显示的**必须是 `Python 3.10.x`**。如果不是,说明第2步操作有误。
  2. 准备requirements.txt文件并安装依赖
    使用catvim创建requirements.txt,内容如下:

    oss2
    numpy<2.0
    

    然后执行安装:

    pip install -r requirements.txt
    
  3. 执行本地测试
    准备好您的index.pylocal_test.py脚本,并设置好环境变量后,运行测试:

    # 运行
    python local_test.py
    

    检查OSS outputs/ 目录,确认文件已成功生成。


4. 如何“推倒重来”:清理错误的虚拟环境

目标:当您发现当前的虚拟环境是基于错误的Python版本(如3.6)创建时,如何安全、彻底地清理并重新开始。

为什么? 虚拟环境 (venv) 的设计就是轻量且“可随时丢弃”的。直接删除重建,是解决环境问题的最快、最干净的方法。

操作步骤:

  1. 退出当前环境
    如果您的命令行提示符前还有 (venv) 字样,说明您仍处于虚拟环境中。首先需要退出。

    deactivate
    
  2. 删除旧的虚拟环境文件夹
    这个操作是物理删除,不可逆,但非常安全,不会影响您的任何项目代码。

    rm -rf venv
    
  3. 重新开始
    清理完毕后,您的项目目录就回到了一个干净的状态。现在,您可以放心地回到本文的第2步第3点,使用正确的Python 3.10路径,创建一个全新的、正确的虚拟环境。

http://www.dtcms.com/a/337997.html

相关文章:

  • excel表格 Vue3(非插件)
  • day25|学习前端js
  • Linux: RAID(磁盘冗余阵列)配置全指南
  • 损失函数与反向传播 小土堆pytorch记录
  • FPGA-Vivado2017.4-建立AXI4用于单片机与FPGA之间数据互通
  • 计算机组成原理(9) - 整数的乘除法运算
  • js计算两个经纬度之间的角度
  • Python字符串连接与合并工程实践:从基础到高性能解决方案
  • 【笔记】位错的定义和分类
  • B站 韩顺平 笔记 (Day 22)
  • 【人工智能】2025年AI代理失控危机:构建安全壁垒,守护智能未来
  • 规避(EDR)安全检测--避免二进制文件落地
  • 面向对象爬虫进阶:类封装实现高复用爬虫框架​
  • DP-v2.1-mem-clean学习(3.6.9-3.6.12)
  • Python 爬虫实战:玩转 Playwright 跨浏览器自动化(Chromium/Firefox/WebKit 全支持)
  • 嵌入式第三十二课!!线程间的同步机制与进程间的通信(IPC机制)
  • PotPlayer使用AI生成字幕和API实时翻译
  • Redis中LRU与LFU的底层实现:字节级的精巧设计
  • 树莓派安装python第三方库如keras,tensorflow
  • day35-负载均衡
  • 智能化合同处理与知识应用平台:让合同从 “管得住” 到 “用得好”
  • C15T3
  • openssl加密里面的pem格式和rsa有什么区别?
  • 财务分析师如何提升自身专业能力:突破职业瓶颈的五年进阶规划
  • nestjs配置@nestjs/config 入门教程
  • 股票常见K线
  • 群晖nas中 打开PHP连接MariaDB 功能扩展
  • JavaSE——高级篇
  • 处理手表步数和分析用户步数数据
  • 【Tech Arch】Spark为何成为大数据引擎之王