不联网的Linux下部署python环境

首先下载 官方简单的环境 conda Miniconda3-py312_24.5.0-0-Linux-x86_64.sh

这里使用的是python3.12加conda环境 简约的版本

通过 rz -be或者xftp来传输这个文件

登录Linux服务器 进入所在的文件目录

给安装包添加执行权限

chmod +x Miniconda3-py312_24.5.0-0-Linux-x86_64.sh

执行脚本

./Miniconda3-py312_24.5.0-0-Linux-x86_64.sh

  • 按回车,同意 License 协议(输入yes
  • 默认安装路径:/home/app/miniconda3(可直接回车)
  • 最后输入yes,让 conda 自动配置环境变量

安装完成后,执行以下命令让配置生效

source ~/.bashrc

验证是否安装成功

conda --version

python --version

正常会显示 conda 版本号和Python 3.12.x

三、离线部署 Python 包(核心步骤)

1. 在有网络的 Windows 电脑上,下载所有依赖包

在 cmd 里执行以下命令,一次性下载适配 Linux x86_64、Python 3.12 的包

下载单个包(以fastapi为例) pip download fastapi==0.136.3 -d %userprofile%\Desktop\offline_pkgs --platform manylinux2014_x86_64 --python-version 3.12 --implementation cp --only-binary=:all: # 批量下载requirements.txt里的所有包 pip download -r %userprofile%\Desktop\requirements.txt -d %userprofile%\Desktop\offline_pkgs --platform manylinux2014_x86_64 --python-version 3.12 --implementation cp --only-binary=:all:

下载好的包传输至Linux服务器

服务器端离线安装包

  1. 激活 conda 的 base 环境: bash

    运行

    复制代码
    conda activate base
  2. 进入包目录,执行安装: bash

    运行

    复制代码
    cd /home/app/algo/offline_pkgs
    python -m pip install --no-index --find-links=/home/app/algo/offline_pkgs -r requirements.txt

    或者安装单个包:

    bash

    运行

    复制代码
    python -m pip install --no-index --find-links=/home/app/algo/offline_pkgs fastapi==0.136.3

四、项目运行与环境固化

  1. 验证所有依赖安装完成后,运行你的项目: bash

    运行

    复制代码
    python /home/app/algo/algo_service/main.py
  2. 如需固化当前环境,可导出离线环境配置(可选): bash

    运行

    复制代码
    # 导出当前环境的依赖列表
    pip freeze > /home/app/algo/requirements.txt

五、常见问题解决

  1. conda 命令找不到 :重新执行source ~/.bashrc,或者退出 Xshell 重新登录。
  2. 包安装提示版本不匹配 :确认下载时--python-version 3.12和服务器环境一致,且包名里的cp312和 Python 版本对应。
  3. scp 传输失败 :用rz -be或 U 盘拷贝文件到服务器。
相关推荐
小江的记录本2 小时前
【JVM虚拟机】垃圾回收GC:垃圾回收算法:标记-清除、标记-复制、标记-整理、分代收集(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·算法·安全·面试
IP搭子来一个2 小时前
爬虫采集大量返回 403、429,到底卡在哪一环?
网络·爬虫·python
之歆2 小时前
Day16_JavaScript 轮播图与事件工程实战(下篇)
服务器·开发语言·前端·javascript·网络·性能优化
deepin_sir2 小时前
06 综合对比与实战选型——到底该用哪个?
python
小江的记录本3 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:G1:Region分区、Mixed GC、回收流程、适用场景(高频)(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·spring cloud·面试
会Tk矩阵群控的小木3 小时前
云控系统在TikTok多账号管理中的核心应用与技术实现
开发语言·php·开源软件·个人开发·tk矩阵
Irene19913 小时前
WSL 切换磁盘后验证完整性(MobaXterm、Powershell、WSL 的区别)
linux·wsl·mobaxterm
智研数智工坊3 小时前
FastAPI+uv+Jinja2+Nuitka 通用Web桌面框架搭建教程|从零搭建可打包迭代的Python开发底座
python·fastapi·uv·nuitka·jinja2·桌面应用开发
摇滚侠3 小时前
Java 零基础全套教程,反射机制,笔记 187-188
java·开发语言·笔记