欢迎光临
我们一直在努力

conda特定环境打包

目录

    • 1️⃣ `conda pack`
    • 2️⃣ `-n lerobot`
    • 3️⃣ `-o ~/lerobot_env.tar.gz`
    • 4️⃣ `–ignore-editable-packages`
    • 5️⃣ 命令整体意思
    • 6️⃣ 打包后的典型使用流程
      • ① 打包
      • ② 复制到另一台机器
      • ③ 解压
      • ④ 修复路径
      • 7️⃣ 最终使用

这条命令是 把一个 Conda 环境打包成一个压缩文件,方便在别的机器上直接解压使用。我们逐部分拆开理解:

conda pack -n lerobot -o ~/lerobot_env.tar.gz –ignore-editable-packages

1️⃣ conda pack

conda pack 是一个工具,用来 打包已有的 Conda 环境。

作用类似:

  • 把环境里的

    • Python
    • 所有依赖包
    • 可执行文件

全部打包成一个 可迁移的压缩包。

常见用途:

  • 在 服务器之间复制环境
  • 在 无网络机器部署环境
  • 在 Docker / 机器人 / 集群节点部署

例如:

conda pack -n myenv -o myenv.tar.gz


2️⃣ -n lerobot

指定要打包的 conda环境名称

意思是:

打包名为 lerobot 的环境

例如:

conda env list

可能看到:

base
lerobot
ros_env

这里就是打包 lerobot。


3️⃣ -o ~/lerobot_env.tar.gz

指定 输出文件

-o = output

输出路径:

~/lerobot_env.tar.gz

解释:

部分含义
~ 用户 home 目录
lerobot_env.tar.gz 压缩包名字

最终得到:

/home/username/lerobot_env.tar.gz


4️⃣ –ignore-editable-packages

意思是:

忽略 editable 模式安装的 Python 包

例如这种安装方式:

pip install -e .

pip install -e /path/to/project

这种包其实只是:

site-packages -> 指向源码目录

例如:

site-packages/mypkg -> /home/user/project/mypkg

如果打包:

conda-pack

它会发现:

源码不在conda环境里

就可能报错。

所以加上:

–ignore-editable-packages

意思是:

这些 editable 包不打包


5️⃣ 命令整体意思

完整翻译:

将名为 lerobot 的 conda 环境打包成 ~/lerobot_env.tar.gz 压缩包, 并 忽略 editable 模式安装的包。


6️⃣ 打包后的典型使用流程

① 打包

conda pack -n lerobot -o lerobot_env.tar.gz


② 复制到另一台机器

scp lerobot_env.tar.gz user@server:/home/user


③ 解压

mkdir lerobot_env
tar -xzf lerobot_env.tar.gz -C lerobot_env


④ 修复路径

cd lerobot_env
./bin/conda-unpack

conda-unpack 会修复:

硬编码路径

例如:

/home/old_user/miniconda/envs/lerobot

变成

/home/new_user/lerobot_env


7️⃣ 最终使用

直接:

source lerobot_env/bin/activate

或者:

lerobot_env/bin/python

就可以运行。

赞(0)
未经允许不得转载:171主机测评 » conda特定环境打包
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址