剧集
使用 Docker 自动存档可重现的研究
替换为 Daniel Nüst
useR!2017:自动存档可重现的 stu...
关键字:Docker、可重现的研究、开放科学
网页: https://github.com/o2r-project/containerit/
计算的可重现性对于数据诞生、以算法方式进行分析的时代至关重要。 然而,大多数研究只发布结果,通常以数字作为重要的解释输出。 但这些数字来自何处? 学术文章不仅必须提供工作的说明,而且必须附带数据和软件。 R 提供了出色的工具来创建可重现的作品,即 Sweave 和 RMarkdown。 已采用多种方法来捕获 R 中的工作区环境,从而绕过 CRAN 的故意选择,不提供包及其依赖项的显式版本控制。 它们在本地保留包的集合(packrat、pkgsnap、switchr/GRANBase)或远程(MRAN timemachine/检查点),或者从 CRAN 或源(requireGitHub、devtools)安装特定版本。 旧版 R 的安装程序在 CRAN 上存档。 用户可以手动重新创建特定环境,但这是一项繁琐的任务。
通过以容器的形式添加抽象层(可以执行脚本或运行交互式会话),我们引入了保留运行时环境(包括包和 R)的新可能性。 包 containeRit 会自动基于 Docker 创建此类容器。 Docker 是打包应用程序及其依赖项的解决方案,但在可重现研究(Boettiger 2015)的上下文中表明有用。 该包创建一个容器清单,Dockerfile 通常是手动从 sessionInfo()、 R 脚本或 RMarkdown 文档编写的。 Dockerfiles 使用 Rocker 社区映像作为基本映像。 Docker 可以从 Dockerfile 生成可执行映像。 映像是 Docker 运行时存在的任意位置的可执行文件。 containeRit 使用港来生成映像和运行容器,使用 sysreqs 来安装 R 包的系统依赖项。 在计划中的 CRAN 版本之前,我们希望分享我们的工作,讨论开放的挑战,如处理链接库(请参阅 关于 Rocker 中的地理空间库的讨论),并欢迎社区反馈。
containeRit 是在 DFG 资助的项目 内开发的,用于支持 创建可执行研究 Compendia (ERC) (Nüst et al. 2017)。
引用博蒂格,卡尔。 2015. “Docker 的简介,用于重现性研究,其中包含 R 环境中的示例。 ACM SIGOPS 操作系统审查 49 (1 月): 71-79。 doi:10.1145/2723872.2723882。
Nüst、Daniel、Markus Konkol、Edzer Pebesma、Christian Kray、Marc Schutzeichel、Holger Przibytzin 和 Jörg Lorenz。 2017. “使用可执行研究 Compendia 打开发布过程。 D-Lib 杂志 23 (1 月)。 doi:10.1045/january2017-nuest。
useR!2017:自动存档可重现的 stu...
关键字:Docker、可重现的研究、开放科学
网页: https://github.com/o2r-project/containerit/
计算的可重现性对于数据诞生、以算法方式进行分析的时代至关重要。 然而,大多数研究只发布结果,通常以数字作为重要的解释输出。 但这些数字来自何处? 学术文章不仅必须提供工作的说明,而且必须附带数据和软件。 R 提供了出色的工具来创建可重现的作品,即 Sweave 和 RMarkdown。 已采用多种方法来捕获 R 中的工作区环境,从而绕过 CRAN 的故意选择,不提供包及其依赖项的显式版本控制。 它们在本地保留包的集合(packrat、pkgsnap、switchr/GRANBase)或远程(MRAN timemachine/检查点),或者从 CRAN 或源(requireGitHub、devtools)安装特定版本。 旧版 R 的安装程序在 CRAN 上存档。 用户可以手动重新创建特定环境,但这是一项繁琐的任务。
通过以容器的形式添加抽象层(可以执行脚本或运行交互式会话),我们引入了保留运行时环境(包括包和 R)的新可能性。 包 containeRit 会自动基于 Docker 创建此类容器。 Docker 是打包应用程序及其依赖项的解决方案,但在可重现研究(Boettiger 2015)的上下文中表明有用。 该包创建一个容器清单,Dockerfile 通常是手动从 sessionInfo()、 R 脚本或 RMarkdown 文档编写的。 Dockerfiles 使用 Rocker 社区映像作为基本映像。 Docker 可以从 Dockerfile 生成可执行映像。 映像是 Docker 运行时存在的任意位置的可执行文件。 containeRit 使用港来生成映像和运行容器,使用 sysreqs 来安装 R 包的系统依赖项。 在计划中的 CRAN 版本之前,我们希望分享我们的工作,讨论开放的挑战,如处理链接库(请参阅 关于 Rocker 中的地理空间库的讨论),并欢迎社区反馈。
containeRit 是在 DFG 资助的项目 内开发的,用于支持 创建可执行研究 Compendia (ERC) (Nüst et al. 2017)。
引用博蒂格,卡尔。 2015. “Docker 的简介,用于重现性研究,其中包含 R 环境中的示例。 ACM SIGOPS 操作系统审查 49 (1 月): 71-79。 doi:10.1145/2723872.2723882。
Nüst、Daniel、Markus Konkol、Edzer Pebesma、Christian Kray、Marc Schutzeichel、Holger Przibytzin 和 Jörg Lorenz。 2017. “使用可执行研究 Compendia 打开发布过程。 D-Lib 杂志 23 (1 月)。 doi:10.1045/january2017-nuest。
想提供反馈? 在此处提交问题。