【问题标题】:Is it possible to conda install with dependencies completely offline?是否可以完全离线使用依赖项进行 conda 安装?
【发布时间】:2014-04-05 07:47:22
【问题描述】:

我将教 10 多人开始使用 Python,并且需要在他们自己的机器上安装它。我选择使用 Miniconda 是因为我想要使用 iPython、matplotlib 等轻松安装 Python 3。我担心每个人同时通过网络安装会阻塞它。有没有办法提前获取所有软件包及其依赖项并将其安装在讲座中的计算机上?

编辑:我怀疑大多数将在 Windows 上运行。

【问题讨论】:

    标签: python-3.x anaconda miniconda


    【解决方案1】:

    最简单的方法是下载Anaconda installers,并将它们保存在几个可以传递的 USB 驱动器上。对于这样的教程,这是非常标准的做法。

    如果人们使用自己的计算机,您应该强烈要求人们事先安装 Anaconda。如果是机房计算机,请在教程之前自行安装。


    作为一种更手动的方式,你可以从http://repo.continuum.io/pkgs/free/osx-64/index.html 下载你需要的包(你可能也想为http://repo.continuum.io/pkgs/free/win-32/index.html 这样做),并将它们打包成一个tarball,然后你可以conda install packages.tar。不过,请确保获得所有依赖项。你可能想用你想要的包创建一个 conda 环境,看看需要什么 (conda create -n test package1 package2 ...)。

    【讨论】:

      【解决方案2】:

      不了解 miniconda,但与其他 linux repo 一样,您可以这样做: (来自ubuntu论坛: https://askubuntu.com/questions/170348/how-to-make-my-own-local-repository)

      为自己设置一个简单的存储库有 4 个步骤

      1.安装dpkg-dev

      2.将包放入目录

      3.创建一个脚本来扫描包并创建一个apt-get update可以读取的文件

      4.在sources.list中添加一行指向你的存储库

      安装 dpkg-dev

      输入终端

      sudo apt-get install dpkg-dev
      

      目录

      创建一个目录来保存你的包。对于此示例,我们将使用 /usr/local/mydebs。

      sudo mkdir -p /usr/local/mydebs
      

      现在将你的包移动到你刚刚创建的目录中。

      以前下载的包通常存储在您系统的 /var/cache/apt/archives 目录中。如果你已经安装了 apt-cacher,你会在它的 /packages 目录中存储额外的包。

      脚本更新-mydebs

      这是一个简单的三班轮:

       #! /bin/bash
       cd /usr/local/mydebs
       dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
      

      将上面的内容剪切并粘贴到gedit中,并将其保存为~/bin中的update-mydebs。 (波浪号“~”表示您的主目录。如果 ~/bin 不存在,请创建它:Ubuntu 会将该目录放在您的 PATH 中。这是放置个人脚本的好地方)。接下来,使脚本可执行:

      chmod u+x ~/bin/update-mydebs
      

      脚本的工作原理: dpkg-scanpackages 查看 mydebs 中的所有包,然后将输出压缩并写入 apt-get update 可以读取的文件 (Packages.gz)(请参阅下面的参考资料,在令人痛苦的细节)。 /dev/null 是一个空文件;它替代了一个覆盖文件,该文件包含一些关于包的附加信息,在这种情况下,这并不是真正需要的。如果您想了解它,请参阅 deb-override(5)。

      Sources.list

      添加行

      deb 文件:/usr/local/mydebs ./ 到你的 /etc/apt/sources.list,你就完成了。

      CD 选项

      您可以将包含 deb 的目录刻录到 CD 上,并将其用作存储库(适合在计算机之间共享)。要将 CD 用作存储库,只需运行

      sudo apt-cdrom add
      Using the Repository
      

      每当你在 mydebs 目录下放一个新的 deb 时,运行

      sudo update-mydebs
      sudo apt-get update
      

      现在您的本地软件包可以使用 Synaptic 进行操作, aptitude 和 apt 命令: apt-getapt-cache等 当您尝试 apt-get install 时,只要能够满足它们,任何依赖项都会为您解决。

      糟糕的包可能会失败,但你不会忍受 dpkg 地狱。

      【讨论】:

      • 感谢您的努力。我忘了提到大多数可能会在他们自己的笔记本电脑上运行,这些笔记本电脑大多是 Windows 机器。这些人以前没有接触过编程。
      • @huggie 我检查了“repo.continuum.io/miniconda”回购。我找到它下载的唯一解决方案:“repo.continuum.io/miniconda/Miniconda3-3.3.0-Windows-x86_64.exe”,然后由于“conda”应用程序中有下载器并且你希望它离线,你可以从网络上直接获取你想要的包。如果你点击“$ conda info”命令时我没记错的话,你会在输出中看到“环境位置:”。只需为最终用户制作一个批处理 cmd 文件,即可在该路径中复制预先下载的 depen 文件夹。这里有一些信息:“continuum.io/blog/conda
      猜你喜欢
      • 2016-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-04
      • 1970-01-01
      • 1970-01-01
      • 2016-03-05
      相关资源
      最近更新 更多