美文网首页Singularity 组装生信专题
Singularity入门之运行容器

Singularity入门之运行容器

作者: kongxx | 来源:发表于2019-07-31 21:34 被阅读0次

下载已存在镜像

和Docker类似,要运行 Singularity 也需要先获取镜像,Singularity 可以从Singularity Hub 或者 Docker Hub 来获取已存在的镜像。

Singularity Hub
singularity -d build lolcow.simg shub://GodloveD/lolcow

Docker Hub
singularity -d build lolcow.simg docker://godlovedc/lolcow
singularity -d build centos.simg docker://centos
singularity -d build ubuntu.simg docker://ubuntu

交互模式运行

$ singularity shell ubuntu.simg
Singularity: Invoking an interactive shell within container...

Singularity ubuntu.simg:~> pwd
/home/admin
Singularity ubuntu.simg:~> id
uid=1000(admin) gid=1000(admin) groups=1000(admin),10(wheel)

执行一个命令并退出

$ singularity exec ubuntu.simg bash -c  "pwd && id"
/home/admin
uid=1000(admin) gid=1000(admin) groups=1000(admin),10(wheel)

运行一个容器

$ singularity run ubuntu.simg
admin@bdmaster:~$ pwd
/home/admin
admin@bdmaster:~$ id
uid=1000(admin) gid=1000(admin) groups=1000(admin),10(wheel)

后台运行容器实例

启动实例

$ singularity instance.start ubuntu.simg test1
$ singularity instance.start ubuntu.simg test2

查看实例

$ singularity instance.list
DAEMON NAME      PID      CONTAINER IMAGE
test1            14172    /home/admin/ubuntu.simg
test2            14239    /home/admin/ubuntu.simg

操作实例

可以通过 shell, exec, run 命令来连到容器中运行命令

使用 shell 命令连入容器

$ singularity shell instance://test1
Singularity ubuntu.simg:~> ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
admin      1     0  0 03:14 ?        00:00:00 singularity-instance: admin [test1]
admin      3     0  3 03:14 pts/0    00:00:00 /bin/bash --norc
admin      4     3  0 03:14 pts/0    00:00:00 ps -ef

使用 exec 执行命令

$ singularity exec instance://test1 ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
admin      1     0  0 03:14 ?        00:00:00 singularity-instance: admin [test1]
admin      6     0  0 03:15 pts/0    00:00:00 ps -ef

停止实例

$ singularity instance.stop test1
$ singularity instance.stop test1

绑定目录

在 Singularity 中也可以在 shell, run, instance.start 等命令中通过 "-B" 选项来实现 Docker 中 “-v” 选项提供挂载卷的功能,比如:

$ singularity shell -B /apps:/apps ubuntu.simg

相关文章

  • Singularity入门之运行容器

    下载已存在镜像 和Docker类似,要运行 Singularity 也需要先获取镜像,Singularity 可以...

  • Singularity入门之持久化Overlay

    介绍 在 Singularity 中运行容器,当容器退出时,对容器做的修改均会丢失,那怎么保存对容器的修改呢?此时...

  • Singularity入门之运行图形应用

    要在 Singularity 中运行图形程序需要重新制作一个镜像,使其包含执行图形应用程序需要的环境和程序,这里还...

  • Singularity 使用指南

    singularity 官网: https://singularity.lbl.gov/ 进入容器 singul...

  • Singularity入门之安装

    下载 编译rpm包 Singularity 提供了几种安装方式,这里选择使用编译 rpm 包的方式来安装。 安装 测试

  • docker容器

    docker快速入门01docker快速入门02KVM和Docker的对比 什么是容器? 容器就是在隔离的环境运行...

  • Singularity入门之资源限制

    在 Singularity 中如果需要限制容器的资源,也可以通过 Linux 的 cgroup 来实现。Singu...

  • Docker容器数据卷

    是什么 docker的理念将运行的环境打包形成容器运行,运行可以伴随容器,但是我们对数据的要求是希望持久化,容器之...

  • Docker入门操作

    docker目录 查看Docker运行状态 第一个docker入门 查看容器 怎样给容器起一个名字? 重启容器的几...

  • Docker(一)入门

    Docker入门 容器的定义 运行在用户空间的独立进程 与其他的用户空间程序是相互隔离 一个容器运行在一个单独的用...

网友评论

    本文标题:Singularity入门之运行容器

    本文链接:https://www.haomeiwen.com/subject/skpxdctx.html