在Linux系统下安装部署Singularity容器

news/2025/1/11 12:48:00/

在以下两篇博客中:

浅谈Singularity容器_男孩李的博客-CSDN博客

Singularity容器常用命令_ubuntu卸载singularity_男孩李的博客-CSDN博客

我们分别介绍了Singularity容器以及Singularity容器的常用命令,相信大家对高性能计算容器Singularity并不陌生了。这次我们将重点描述如何安装部署Singularity容器。

Singularity容器的安装大致分为以下三个步骤:

  • 安装Go
  • 下载Singularity
  • 编译Singularity源代码

1.安装Go

Singularity v3 及以上版本主要用 Go语言 编写,所以需要安装Go才能进行源代码编译。

关于Go的下载,可以从下面网页中根据需要选择合适的版本下载。

All releases - The Go Programming LanguageAll releases - The Go Programming Language

 在这里我们选择适用于Linux系统的go1.20.5.linux-amd64.tar.gz。

下载完成后解压到/usr/local目录下,并设置相应的环境变量。

tar -C /usr/local -xzvf go1.20.5.linux-amd64.tar.gz

将环境变量设置为指向 Go:PATH

echo 'export PATH=/usr/local/go/bin:$PATH' >> ~/.bashrc && \source ~/.bashrc

注意:如果之前系统中已经下载安装过go程序,需要将之前的删除或替换

go rm -r /usr/local/go

2.下载Singularity

您可以从其中一个版本下载奇点。要查看完整列表,请访问 GitHub 发布页面。 确定要安装的版本后,可以运行以下命令以 继续安装。

 如果需要下载其他版本的,也可以拉到最后翻页下载,或直接在命令行中指定下载。

$ export VERSION=3.7.3 && # adjust this as necessary \wget https://github.com/sylabs/singularity/releases/download/v${VERSION}/singularity-${VERSION}.tar.gz && \tar -xzf singularity-${VERSION}.tar.gz && \cd singularity

3.编译Singularity源代码

现在你已经准备好构建Singularity了。依赖项将自动下载。您可以使用以下命令构建Singularity:

$ ./mconfig && \make -C builddir && \sudo make -C builddir install

需要注意的是Singularity需要在root用户下安装才能正常运行。

4.安装验证

验证是否安装成功:

Singularity的命令行界面允许您构建 并与容器透明地交互。您可以在 容器,就像它们在您的主机系统上运行一样。您可以轻松重定向 IO、使用管道、传递参数以及访问主机上的文件、套接字和端口 容器内的系统。

singularity help命令,可以查看如何使用singularity与Linux系统进行交互。

 

5.另外一种方式是yum安装

yum update -y 
yum install -y singularity

或:

yum安装Singularity以及依赖包。

yum install -y singularity-runtime singularity libseccomp-devel golang git socat gcc

http://www.ppmy.cn/news/799216.html

相关文章

绝对逃生游戏的计算机要求,绝地求生需要什么配置 绝地求生电脑配置详解

绝地求生是当下最热门的游戏之一,但由于配置要求较高,游戏优化差劲等问题,导致很多玩家出现电脑跟不上,游戏体验不足等情况,在这里给大家详细介绍一下绝地求生所需要的电脑配置要求,大家可以认真查看一下&a…

Qt保存代码

补全保存代码 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//字体按钮对应的槽函数 void Widget::on_fontBtn_clicked() {…

解析:为什么程序员应该有一台Mac个人电脑?

对于开发来讲,使用Mac电脑的好处,下面简单列举几个: 首先,macOS很安全和稳定,Mac 系统的底层是最原始的unix操作系统,很多大型的银行和军工企业都是这个操作系统,安全性很高,基本不…

为什么程序员应该有一台 Mac 个人电脑

程序员的成长之路互联网/程序员/成长/职场 关注 阅读本文大概需要 5.4 分钟。 对于开发来讲,使用 Mac 电脑的好处,下面简单列举几个: 首先,macOS 很安全和稳定,Mac 系统的底层是最原始的 unix 操作系统,很…

相对于外存储器来说 微型计算机的内存储器,[转载]计算机基础知识题库(十)

60 、ASCII码指的是() A)国家信息交换码 B)信息交换码 C) 美国国家信息交换码 D)美国信息交换标准码 61 、在ASCII码表中,ASCII码值从小到大排列顺序是() A)数字、小写英文字母、大写英文字母 B)数字、大写英文字母、小写英文字母 C)小写英文字母、大写英文字母、数…

大话存储系列4——固态硬盘(SSD)及其前景

本文整理自网络: 1、简介 固态硬盘(Solid State Disk、IDE FLASH DISK、Serial ATA Flash Disk)是由控制单元和存储单元(FLASH芯片)组成,简单的说就是用固态电子存储芯片阵列而制成的硬盘(目前…

Mybatis-Plus基础使用总结

Mybatis-Plus总结基础 1、了解Mybatis-Plus1.1、Mybatis-Plus介绍1.2、代码以及文档1.3、特性1.4、架构1.5、作者 2、快速开始2.1、创建数据库以及表2.2、创建工程2.3、Mybatis MP2.3.1、创建子Module2.3.2、Mybatis实现查询User2.3.3、MybatisMP实现查询User 2.4、Spring My…

电源芯片的选择简略

电子产品的稳定工作离不开工作电压的稳定,而提供波动值较小的电压,则需要高线性的电源芯片,常用的电源芯片可分为升压型直流-直流变换、降压型直流-直流变换等,线性稳压器的压差目前可以做到很小,特别是在低电压的使用…