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

在离线的服务器上部署Python的安装库

在离线服务器上部署 Python 安装库(如 SQLAlchemy、pandas、pyodbc 等),可以使用以下方法:

方法 1:在联网机器上下载依赖,拷贝到离线服务器

适用于:服务器完全无法访问互联网。

步骤

1. 在联网机器上下载所需的 Python 依赖

mkdir packages
pip download -r requirements.txt -d packages

或者单独下载:

pip download sqlalchemy pandas pyodbc -d packages

2. 将 packages 目录拷贝到离线服务器

3. 在离线服务器上安装

pip install --no-index --find-links=packages -r requirements.txt

或者手动安装:

pip install --no-index --find-links=packages sqlalchemy pandas pyodbc

默认会安装到全局 Python 环境(即 system-wide 的 Python 解释器)。

方法 2:使用 Python 虚拟环境(venv)

适用于:想要在本地创建完整环境,并复制到离线服务器。

步骤

1. 在联网机器上创建虚拟环境

python -m venv myenv
source myenv/bin/activate  # Windows: myenv\Scripts\activate
pip install sqlalchemy pandas pyodbc

2. 压缩 venv 目录并拷贝到离线服务器

tar -czvf myenv.tar.gz myenv
scp myenv.tar.gz user@server:/path/to/destination

3. 在离线服务器上解压并使用

tar -xzvf myenv.tar.gz
source myenv/bin/activate

如果你想安装到虚拟环境

如果你不想影响全局 Python 环境,可以先创建并激活一个 虚拟环境,然后在其中安装:

1. 创建并激活虚拟环境

python -m venv myenv   # 创建虚拟环境
source myenv/bin/activate   # Linux/macOS
# Windows 上使用:
# myenv\Scripts\activate

2. 在虚拟环境中安装离线包

pip install --no-index --find-links=packages sqlalchemy pandas pyodbc

这样,所有的包都会安装在 myenv 目录下,而不会影响全局 Python 环境。

如何确认安装位置?

你可以使用以下命令检查 SQLAlchemy 的安装路径:

python -c "import sqlalchemy; print(sqlalchemy.__file__)"

如果安装在全局环境,路径可能类似:

/usr/lib/python3.11/site-packages/sqlalchemy/__init__.py

如果安装在虚拟环境,路径会在 venv 目录下:

/home/user/myenv/lib/python3.11/site-packages/sqlalchemy/__init__.py

如何卸载全局安装的库?

如果你误装到了全局环境,可以卸载:

pip uninstall sqlalchemy pandas pyodbc

然后使用虚拟环境重新安装。

http://www.lryc.cn/news/533212.html

相关文章:

  • 计算机网络笔记再战——理解几个经典的协议2
  • 设计高效的测试用例:从需求到验证
  • git reset 命令
  • docker被“遗忘”的那些参数该如何拯救
  • BFS算法——广度优先搜索,探索未知的旅程(下)
  • Python分享20个Excel自动化脚本
  • pytest+request+yaml+allure 接口自动化测试全解析[手动写的跟AI的对比]
  • 深入解析 FFmpeg 的 AAC 编解码过程
  • 嵌入式硬件篇---OpenMV串口通信json字符串
  • Python基于Django的课堂投票系统的设计与实现【附源码】
  • 蓝桥杯 Java 之输入输出
  • Kubernetes是什么?为什么它是云原生的基石
  • @emotion/styled / styled-components创建带有样式的 React 组件
  • Android 常用命令和工具解析之Battery Historian
  • 家用报警器的UML 设计及其在C++和VxWorks 上的实现01
  • k8s常见面试题2
  • CSS 伪类(Pseudo-classes)的详细介绍
  • 将Deepseek接入pycharm 进行AI编程
  • 【Ollama】一、介绍
  • ASP.NET Core JWT
  • 查询引擎:它们是什么以及为什么重要
  • 03/29 使用 海康SDK 对接时使用的 MysqlUtils
  • 2025.2.7 Python开发岗面试复盘
  • 一个sql只能有一个order by
  • Windows Docker笔记-在容器中运行项目
  • postgreSQL16.6源码安装
  • 寒假2.5
  • 定期删除一周前的数据,日志表的表空间会增长吗?
  • yum 安装mysql
  • Servlet笔记(下)