自学内容网 自学内容网

如何将docker容器中的软件安装到singularity容器中?

背景:因研究需要,复现某论文,使用的是某校的服务器集群。他们服务器使用的容器是Singularity,而之前自己在院里用的时docker,比如需要将docker容器中的BUSCO软件安装到Singularity容器当中。

一、 容器简介:

1、容器

  容器是一种Linux上广为采用的应用封装技术,它将可执行程序与依赖库打包成一个镜像文件,启动时与宿主节点共享操作系统内核。 由于镜像文件同时携带可执行文件和依赖库,避免了两者不匹配造成的兼容性问题,还能在一个宿主Linux操作系统上支持多种不同的Linux发行版,譬如在CentOS发行版上运行Ubuntu的 apt-get 命令。

2、singularity的重要概念

(1)容器(container): 容器是一个包含用户软件和依赖的镜像系统,可独立运行某一条或者多条命令。Singularity没有镜像的概念,用户创建和运行的都是一个一个容器。

(2)SIF(Singularity Image File):压缩后的只读(read-only)的Singularity镜像文件,是生产使用的主要形式。

(3)Sandbox :可写(writable)的容器存在形式,是文件系统中的一个目录,常用于开发或者创建自己的容器,是开发使用的主要形式。

二、Singularity容器命令

主要命令就是三个,容易混淆的地方对于 只读的.sif镜像文件,sandbox形式容器和一般容器实例的应用有所不同。

singularity shell
singularity exec
singularity run 

三、busco软件转移安装

singularity pull docker://ezlabgva/busco

参考来源:

User guide BUSCO v5.7.1 (ezlab.org)

Singularity实践教程 + Docker 转 Singularity 的避坑指南_singularity教程-CSDN博客


原文地址:https://blog.csdn.net/hgz2020/article/details/142894940

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!