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 格式保存
相关推荐
JuiceFS1 天前
从 MLPerf Storage v2.0 看 AI 训练中的存储性能与扩展能力
运维·后端
HONG_YANG1 天前
基于 Docker 部署 n8n 指南,新手一看就会
自动化运维
chen9451 天前
mysql 3节点mgr集群部署
运维·后端
LH_R1 天前
OneTerm开源堡垒机实战(三):功能扩展与效率提升
运维·后端·安全
dessler1 天前
Hadoop HDFS-高可用集群部署
linux·运维·hdfs
少妇的美梦2 天前
logstash教程
运维
chen9452 天前
k8s集群部署vector日志采集器
运维
chen9452 天前
aws ec2部署harbor,使用s3存储
运维
東雪蓮☆2 天前
深入理解 LVS-DR 模式与 Keepalived 高可用集群
linux·运维·服务器·lvs
qq_264220892 天前
LVS负载均衡群集和LVS+Keepalived群集
运维·负载均衡·lvs