You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何离线重装Python环境?无网服务器conda/pip环境自动化迁移方案

离线复制Python环境的自动化方案

针对你需要将联网机器上的conda+pip环境迁移到离线服务器的需求,完全可以通过脚本自动化整个流程,下面分联网机器打包和离线服务器重建两部分给出具体方案:

一、联网机器:自动化导出环境与下载依赖

1. 一键打包脚本

把以下操作整合到Shell脚本中,只需指定环境名就能完成所有打包操作:

#!/bin/bash
# 用法:bash export_env.sh 你的环境名
ENV_NAME=$1

# 创建统一的离线包存储目录
mkdir -p offline_env/{conda_pkgs,pip_pkgs}

# 导出conda环境完整配置(含包版本、通道信息)
conda env export --name "$ENV_NAME" > offline_env/env.yaml

# 批量下载conda环境的所有依赖包到本地
conda install --name "$ENV_NAME" --download-only --file offline_env/env.yaml -c conda-forge -p ./offline_env/conda_pkgs

# 导出pip安装的包清单
pip freeze > offline_env/requirements.txt

# 批量下载pip包到本地目录
pip download -r offline_env/requirements.txt -d ./offline_env/pip_pkgs

# 打包所有文件,方便拷贝到离线服务器
tar -czf offline_env.tar.gz offline_env/

运行脚本后,会生成offline_env.tar.gz压缩包,包含conda环境配置、所有conda离线包、pip包清单和pip离线包。

二、离线服务器:自动化重建环境

将压缩包拷贝到离线服务器后,用以下脚本一键重建环境:

#!/bin/bash
# 用法:bash restore_env.sh 新环境名
NEW_ENV_NAME=$1

# 解压压缩包
tar -xzf offline_env.tar.gz

# 从本地conda包创建环境(--offline确保不联网)
conda create --name "$NEW_ENV_NAME" --file offline_env/env.yaml --offline --channel "file://$(pwd)/offline_env/conda_pkgs" -y

# 激活环境并安装pip离线包(用conda run避免手动激活的繁琐)
conda run --name "$NEW_ENV_NAME" pip install --no-index --find-links=./offline_env/pip_pkgs -r ./offline_env/requirements.txt

关键注意事项

  • 必须保证联网机器和离线服务器的操作系统、CPU架构完全一致(比如都是x86_64的CentOS/Ubuntu),否则下载的二进制包无法兼容。
  • 脚本中的conda通道(-c conda-forge)要和原环境使用的通道一致,否则可能出现包版本不匹配的问题。
  • 对于部分需要编译的pip包(如某些机器学习库),如果离线服务器缺少编译依赖(如gcc、python-devel),建议在联网机器上提前下载对应的wheel包(pip默认优先下载wheel,若没有则需手动指定或提前安装编译依赖)。

内容的提问来源于stack exchange,提问作者xueliang liu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 16:55:21