BioContainers项目源于使用Docker或rkt等基于容器的技术来处理生物信息学软件的想法。拥有一个可控制的通用环境来运行软件,有助于解决软件开发和分发过程中的一些当前问题。BioContainers是一个社区驱动的项目,提供基础设施和基本指南,用于创建、管理和分发生物信息学容器,特别关注蛋白质组学、基因组学、转录组学和代谢组学等组学领域。已在BioContainers中实现的主要容器(https://github.com/BioContainers/containers%EF%BC%89%E5%B7%B2%E8%AF%A6%E7%BB%86%E8%AE%A8%E8%AE%BA%EF%BC%8C%E5%8C%85%E6%8B%AC%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8BioContainers%E7%9A%84%E7%A4%BA%E4%BE%8B%E3%80%82
当前可用的BioContainers容器促进了软件和算法的使用及可重复性。它们可以集成到更全面的生物信息学流程和不同架构(本地桌面、云环境或HPC集群)中。我们还提供了创建新容器以及如何为BioContainers项目做贡献的指南和规范。
容器基于现有操作系统构建。它们与虚拟机的不同之处在于,容器内部没有完整的 guest OS,而是使用优化的系统库,并利用主机OS的内存管理和进程控制。容器通常围绕特定软件构建,通过从容器实例化镜像可以使其可执行。
!https://github.com/BioContainers/specs/blob/master/imgs/container.png
大多数时候,进行生物信息学分析时,需要安装和配置多个生物信息学工具和软件。这个过程可能需要数小时,并且需要大量努力,包括安装多个依赖项和工具。BioContainers提供现成的软件包和工具,可以轻松部署并在本地机器、HPC和云架构中使用。
BioContainers在两个主要 registry 中列出:
有关如何使用BioContainers执行生物信息学分析的完整文档,请查看完整文档。
BioContainers是一个社区驱动的项目,允许生物信息学家使用容器请求、构建和部署生物信息学工具。下图展示了BioContainers的一般工作流程:
!https://github.com/BioContainers/specs/blob/master/imgs//workflow.png
以下部分详细解释所示工作流程:
2.4.1 如何请求容器
用户可以通过在http://github.com/BioContainers/sandbox/issues%E4%B8%AD%E5%88%9B%E5%BB%BAissue%E6%9D%A5%E8%AF%B7%E6%B1%82%E5%AE%B9%E5%99%A8%EF%BC%88%E5%9C%A8%E5%89%8D%E9%9D%A2%E7%9A%84%E5%B7%A5%E4%BD%9C%E6%B5%81%E7%A8%8B%E4%B8%AD%EF%BC%8C%E8%BF%99%E6%98%AF%E7%94%A8%E6%88%B7henrik%E6%89%A7%E8%A1%8C%E7%9A%84%E7%AC%AC%E4%B8%80%E6%AD%A5%EF%BC%89%E3%80%82%E8%AF%A5issue%E5%BA%94%E5%8C%85%E5%90%AB%E8%BD%AF%E4%BB%B6%E5%90%8D%E7%A7%B0%E3%80%81%E8%A6%81%E6%89%93%E5%8C%85%E7%9A%84%E4%BB%A3%E7%A0%81%E6%88%96%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E7%9A%84URL%E4%BB%A5%E5%8F%8A%E6%9C%89%E5%85%B3%E8%BD%AF%E4%BB%B6%E7%9A%84%E4%BF%A1%E6%81%AFhttp://github.com/BioContainers/container-specs.md%E3%80%82%E5%BD%93%E5%AE%B9%E5%99%A8%E9%83%A8%E7%BD%B2%E5%B9%B6%E5%AE%8C%E5%85%A8%E5%8A%9F%E8%83%BD%E6%AD%A3%E5%B8%B8%E5%90%8E%EF%BC%8C%E8%AF%A5issue%E5%B0%86%E7%94%B1%E5%BC%80%E5%8F%91%E8%80%85%E6%88%96BioContainers%E8%B4%A1%E7%8C%AE%E8%80%85%E5%85%B3%E9%97%AD%E3%80%82
2.4.2 使用BioContainer
当容器部署完成且开发者关闭GitHub上的issue后,用户(henrik)会收到容器已准备就绪的通知。然后,用户可以使用docker或rkt拉取相应的容器。
有两种不同的构建容器的方法:
在中央仓库中有一系列带有docker配方的软件列表,您可以在那里找到有关如何使用它们的更多信息。
BioContainers基于Linux系统,因此您需要一台安装了Linux的计算机,还需要docker或rkt守护进程以及要容器化的软件。
准备好所有内容后,您需要创建一个Dockerfile。Dockerfile是简单的配方,用于指导守护进程如何设置适当的操作系统以及如何下载、管理、安装软件并提供对软件的访问。
您可以查看Docker文档获取更多信息。
容器准备就绪后,您可以与我们联系,以便我们做出适当安排,通过提供自动化构建系统使您的容器对社区中的每个人可用。
准备好所有内容后,您需要创建rkt容器。rkt容器是简单的配方,用于指导守护进程如何设置适当的操作系统以及如何下载、管理、安装软件并提供对软件的访问。
您可以查看https://github.com/coreos/rkt/blob/master/Documentation/getting-started-guide.md%E6%96%87%E6%A1%A3%E8%8E%B7%E5%8F%96%E6%9B%B4%E5%A4%9A%E4%BF%A1%E6%81%AF%E3%80%82
容器准备就绪后,您可以与我们联系,以便我们做出适当安排,通过提供自动化构建系统使您的容器对社区中的每个人可用。
无论您是想将自己的软件作为容器提供给他人,还是只想在您的流程和分析中使用它们,或者只是提供意见,都非常欢迎。这是一个社区驱动的项目,意味着每个人都有发言权。
以下是一些大致的想法:
Apache 2
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务