使用spack mirror简化离线环境的包安装

Posted 王万林 Ben

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用spack mirror简化离线环境的包安装相关的知识,希望对你有一定的参考价值。

22-Apr-2022

众所周知,研发架构是企业的安全与效率需经权衡后的结果。大多数企业的研发环境并不能连接互联网,这也就意味着不能很好地(至少是第一时间)使用各种开源工具。

在Linux环境下使用开源工具,除了要安装该工具本身,也可能涉及到非常复杂的依赖链。显然,使用trial-and-error的方式进行安装,已不太现实。笔者曾在海思HPC环境,为海外同事安装一个开源工具环境,手动花了两周(到拖拖拖一两个月)时间,因受困于复杂的依赖链关系,最终以失败告终,告诉用户你这需求解决不了。

痛定思痛,2019年我开始找自动化安装解决方案。spack与easybuild浮出水面。在这方面,原来全球的超算同行已经走在很前面。

本文就spack mirror展开探讨,解释它如何能为芯片研发HPC环境自动化安装正确的包,同时能节省管理员的安装时间,节省用户的使用时间。

架构图(待补充)

步骤:

1. 在联网的服务器执行

spack mirror create -all #将所有包mirror下来,慎用,很大。

spack find -p | awk ‘print $1’ > specs.txt && spack mirror create -f specs.txt #将所有已安装的包版本以及依赖,将它们的安装包全部mirror下来

2. 然后传到离线的生产服务器

配置好mirror文件夹路径

soack install <package>@<version> #安装

开发者涨薪指南 48位大咖的思考法则、工作方式、逻辑体系

以上是关于使用spack mirror简化离线环境的包安装的主要内容,如果未能解决你的问题,请参考以下文章

Spack - 自动化安装管理器

离线安装python环境

CentOS 离线安装Gitlab-ce

使用外部 MPI 接口安装 spack 包

如何查看 anaconda 下安装的包

python使用pip 18以上版本离线安装package