基本命令:
-
帮助命令:
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),不允许修改 - 可写格式 :
--writable
或 Sandbox 目录,允许修改镜像中的内容
从头构建镜像:
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
格式保存