【问题标题】:Offline install order of Conda packagesConda 包的离线安装顺序
【发布时间】:2018-09-15 22:01:00
【问题描述】:

我们最近在企业环境中安装了 Anaconda。不幸的是,由于各种 IT 和网络策略到位,我们无法使用进入 continuum 存储库的正常 conda 安装方法。由于某种端口阻塞,我们最终会收到一个 http 错误。

conda install nodejs
Fetching package metadata ...

CondaHTTPError: HTTP None None
for url <None>

An HTTP error occurred when trying to retrieve this URL.
ProxyError(MaxRetryError("HTTPSConnectionPool(host='repo.continuum.io', port=443): Max retries exceeded with url: /pkgs/free/win-64/repodata.json.bz2 (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x0000000002C597B8>: Failed to establish a new connection: [Errno 11004] getaddrinfo failed',)))",),)

然而,我们能够做的是从https://repo.continuum.io/pkgs/ 手动下载 *.tar.bz2 文件并执行离线安装。

conda install ./nodejs-8.9.3-hd6b2f15_0.tar.bz2

现在,我的问题是围绕要安装的其他软件包列表的软件包。我们想要安装的软件包是 r-essentials。但是查看https://repo.continuum.io/pkgs/r/win-64/r-essentials-3.4.3-r343_0.tar.bz2 中包含的配方,列出了 200 多个软件包,其中一些已经作为 Anaconda 5.1.0 的一部分安装,而其他特定于 r-essentials 我们需要下载。

假设我们经历了下载所有软件包的艰苦过程。我有一些问题:

  • 我们可以为每个单独的包创建一个批处理文件来运行离线 conda 安装吗?或者有没有更好的方法来批量安装 100 多个离线包?
  • 如果我们的批处理安装程序中的软件包是以前已经安装的软件包,会有什么危害吗?还是会跳过已安装的软件包?
  • 是否需要安装软件包的特定顺序?
  • 如果将来 IT 取消阻止我们的端口访问,我们可以通过存储库更新离线安装的软件包吗?

【问题讨论】:

    标签: installation anaconda conda package-managers offlineapps


    【解决方案1】:

    我在离线服务器上安装软件包及其依赖项时遇到了同样的问题。

    我的解决方案是在连接互联网的服务器上进行“试运行”安装,并让 conda 解决依赖关系。根据这些示例,“试运行”输出通过管道传输到 json 文件。

    ${HOME}/anaconda3/bin/conda install --dry-run \
    cx_oracle \
    sqlparse \
    ujson \
    --json > /tmp/anaconda_channel_pkgs.json
    
    ${HOME}/anaconda3/bin/conda install --dry-run --channel conda-forge \
    altair \
    python-xxhash \
    --json > /tmp/condaforge_channel_pkgs.json
    

    然后我处理 json 文件,下载所需的包,并使用此 script 创建一个 tar'd 包包和适合安装在离线服务器上的说明。

    它在 Anaconda3-5.1.0-Linux-x86_64 上对我有用。希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-07
      • 2015-10-22
      • 1970-01-01
      • 2020-10-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多