前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Singularity入门之运行容器

Singularity入门之运行容器

作者头像
kongxx
发布2019-08-01 20:26:50
5.8K0
发布2019-08-01 20:26:50
举报

下载已存在镜像

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

代码语言:javascript
复制
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

交互模式运行

代码语言:javascript
复制
$ 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)

执行一个命令并退出

代码语言:javascript
复制
$ singularity exec ubuntu.simg bash -c  "pwd && id"
/home/admin
uid=1000(admin) gid=1000(admin) groups=1000(admin),10(wheel)

运行一个容器

代码语言:javascript
复制
$ singularity run ubuntu.simg
admin@bdmaster:~$ pwd
/home/admin
admin@bdmaster:~$ id
uid=1000(admin) gid=1000(admin) groups=1000(admin),10(wheel)

后台运行容器实例

启动实例

代码语言:javascript
复制
$ singularity instance.start ubuntu.simg test1
$ singularity instance.start ubuntu.simg test2

查看实例

代码语言:javascript
复制
$ singularity instance.list
DAEMON NAME      PID      CONTAINER IMAGE
test1            14172    /home/admin/ubuntu.simg
test2            14239    /home/admin/ubuntu.simg

操作实例

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

使用 shell 命令连入容器

代码语言:javascript
复制
$ 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 执行命令

代码语言:javascript
复制
$ 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

停止实例

代码语言:javascript
复制
$ singularity instance.stop test1
$ singularity instance.stop test1

绑定目录

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

代码语言:javascript
复制
$ singularity shell -B /apps:/apps ubuntu.simg
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019.07.31 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 下载已存在镜像
  • 交互模式运行
  • 执行一个命令并退出
  • 运行一个容器
  • 后台运行容器实例
    • 启动实例
      • 查看实例
        • 操作实例
          • 停止实例
          • 绑定目录
          相关产品与服务
          容器镜像服务
          容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档