Singularity使用

基本命令:

  • 帮助命令

    • singularity --help 显示帮助信息
    • singularity help <command> 查看具体命令的帮助
  • 容器管理命令

    • singularity build <image-name> 构建镜像
    • singularity pull <image-name> 从Singularity Hub或Docker Hub拉取镜像
    • singularity inspect <image-name> 查看镜像元数据

容器使用:

  • shell :启动容器的交互式 shell
    singularity shell <image-name>
  • exec :在容器内执行指定命令
    singularity exec <image-name> <command>
  • run :启动镜像中的默认运行命令
    singularity run <image-name>

镜像格式:

  • 默认格式.simg (SquashFS),不允许修改
  • 可写格式--writableSandbox 目录,允许修改镜像中的内容

从头构建镜像:

  • singularity build --sandbox <dir-name> <source> 用于构建一个可写的目录镜像
  • singularity build <image-name>.simg <source> 用于构建不可修改的 .simg 格式镜像

格式转换:

  • singularity build <new-image>.simg <sandbox-dir> 用于将 sandbox 转换为 .simg 格式。

使用 Singularity Hub/Docker Hub:

  • singularity pull shub://<container-name> 从 Singularity Hub 拉取镜像
  • singularity pull docker://<container-name> 从 Docker Hub 拉取镜像

Singularity 配置文件 (Singularity Recipes):

类似 Dockerfile,可以通过指定构建步骤创建镜像。包含以下部分:

  • %runscript:容器启动时执行的命令
  • %files:复制文件到容器
  • %environment:定义环境变量
  • %post:构建后的安装步骤

常用格式:

  • SquashFS (.simg): 默认的、不可写的格式
  • Sandbox :可读写的目录,修改后会丢失,除非加上 --writable
  • Writable Image (.img): 类似于 Sandbox,但作为 .img 格式保存
相关推荐
Guheyunyi8 小时前
消防管理系统如何重构现代空间防御体系
大数据·运维·人工智能·安全·信息可视化·重构
我是好小孩8 小时前
【Android】六大设计原则
android·java·运维·服务器·设计模式
孙同学要努力9 小时前
《Linux篇》进程状态——浅度、深度睡眠状态、僵尸状态、运行状态
linux·运维
jieyu11199 小时前
Linux Rootkit 详解
linux·运维·系统安全
宁檬精9 小时前
运维面试准备——综合篇(一)
linux·运维·服务器
weixin_4569042710 小时前
工业自动化通信控制
运维·struts·自动化
帅帅梓11 小时前
nginx访问控制 用户认证 https
运维·nginx·https
b***251112 小时前
比斯特自动化|为什么焊接18650电池离不开点焊机?
运维·自动化
xgysimida12 小时前
一文搞懂supervisord是什么?
运维·运维开发
做运维的阿瑞12 小时前
从传统Linux部署到容器化:实践对比与工程化指南
linux·运维·服务器