Snakemake:Docker 预装了所有可执行文件的图像
Snakemake: Docker image with all executables preinstalled
我想从 Docker 容器中 运行 Snakemake 工作流程,即容器本身应该包含 Snakemake,但也预装了所有必需的可执行文件。可执行文件的安装方式多种多样,从系统包管理器到可下载的二进制文件再到 Bioconda。一些 Bioconda 工具需要进入它们自己的环境,因为它们与安装的其余部分不兼容。但是由于 Snakemake 不能使用预先存在的环境,我只能使用 conda 指令(在 Docker 图像内的 运行 时间安装?!)或容器指令(Docker 内Docker?!)。我真的没有办法创建一个成熟的预构建一体机镜像吗?我是否忽略了一些最佳实践?
谢谢,
安德烈亚斯
有人说要添加按名称指定 conda 环境的功能,但尚未出现:
https://github.com/snakemake/snakemake/issues/352
有一些选项:
您可以使用 snakemake --conda-create-envs-only 预构建环境作为容器构建的一部分。
您也可以(尽管这可能不是最佳做法)激活外部环境作为规则的 shell 命令的一部分。
我想从 Docker 容器中 运行 Snakemake 工作流程,即容器本身应该包含 Snakemake,但也预装了所有必需的可执行文件。可执行文件的安装方式多种多样,从系统包管理器到可下载的二进制文件再到 Bioconda。一些 Bioconda 工具需要进入它们自己的环境,因为它们与安装的其余部分不兼容。但是由于 Snakemake 不能使用预先存在的环境,我只能使用 conda 指令(在 Docker 图像内的 运行 时间安装?!)或容器指令(Docker 内Docker?!)。我真的没有办法创建一个成熟的预构建一体机镜像吗?我是否忽略了一些最佳实践?
谢谢, 安德烈亚斯
有人说要添加按名称指定 conda 环境的功能,但尚未出现:
https://github.com/snakemake/snakemake/issues/352
有一些选项:
您可以使用 snakemake --conda-create-envs-only 预构建环境作为容器构建的一部分。
您也可以(尽管这可能不是最佳做法)激活外部环境作为规则的 shell 命令的一部分。