跳转到主要内容

在本地工作站上启动AiiDAlab的工具。

项目描述

AiiDAlab Launch

PyPI version PyPI pyversions Build status codecov Commit Activity

AiiDAlab Launch使得在您的个人工作站或笔记本电脑上运行AiiDAlab变得容易。

入门指南

要使用AiiDAlab launch,您将需要

  1. 在您的个人工作站或笔记本电脑上安装Docker。(您也可以使用Podman,见下方

  2. 使用pipx安装AiiDAlab launch(推荐

    pipx install aiidalab-launch
    

    或直接使用pip(pip install aiidalab-launch)。

  3. 启动AiiDAlab

    aiidalab-launch start
    
  4. 按照屏幕上的说明在浏览器中打开AiiDAlab。

查看aiidalab-launch --help以获取详细信息。

实例管理

您可以使用以下方式检查所有配置的AiiDAlab配置文件的状态

aiidalab-launch status

配置文件管理

此工具允许管理多个配置文件,例如具有不同的主目录或端口的配置文件。有关更多信息,请参阅aiidalab-launch profile --help

数据管理

默认情况下,AiiDAlab 将将其所有数据存储在配置文件选项 home_mount 中定义的 Docker 卷 中。您还可以为主机系统上的 AiiDAlab 主目录提供绝对路径(称为 绑定挂载)。如果此目录不存在,AiiDAlab 启动时会尝试在启动时创建它。

要挂载到 AiiDAlab 容器中的附加卷可以指定为 extra_mounts 选项,使用 "docker-compose 简短语法" source:target:modesource 是卷名称或主机系统上现有目录的绝对路径,target 是 AiiDAlab 容器内的路径,而模式可以是 rw(可读写卷,默认)或 ro(只读卷)。

例如,以下是如何将安装在主机系统上的量子化学程序挂载到 AiiDAlab 容器中以便 AiiDA 可以访问的说明。

extra_mounts = ["/path/to/qcprogram:/opt/qcprogram:ro",]

最后,AiiDAlab 启动将创建一个专用的卷用于本地 conda 环境(~/.conda)。这是因为一些 conda 软件包与非 Linux 文件系统不兼容,这意味着如果主目录绑定到主机上的 Mac OS-X 文件系统,则无法安装。

通过 SSH 从远程服务器转发 AiiDAlab

请参阅此处有关在远程机器上运行 AiiDAlab 并将其转发到本地终端的说明。

兼容性

本软件包遵循由 NEP 29 指定的 Python 兼容性和弃用计划。

使用 Podman 代替 Docker

您应该能够使用 Podman 作为 Docker 的直接替代品,只需进行一点额外的设置。以下是在预装 Podman 的 Fedora 39 上进行的测试。

systemctl --user enable podman.socket
systemctl --user start podman.socket
systemctl --user status podman.socket
export DOCKER_HOST=unix:///run/user/$UID/podman/podman.sock

开发

设置开发环境

要开发此软件包,首先克隆它,然后使用 pip install -e '.[dev]' 安装开发依赖项。我们建议安装 pre-commit 插件以避免在推送新更改时进行不必要的迭代。要安装 pre-commit 插件,直接切换到存储库根目录并执行

pre-commit install

运行自动化测试

要运行自动化测试套件,克隆存储库,使用 pip install -e '.[tests]' 安装测试依赖项,然后执行

pytest

以运行所有标准测试,以及

pytest --slow

要运行完整的测试套件,包括可能启动 docker 实例并可能需要多分钟时间的测试。

持续集成工作流程将运行所有测试,包括“慢速”测试。

注意:在 Mac OS-X 上,您可能需要覆盖标准临时基本目录才能成功运行所有测试(例如 pytest --basetemp=$HOME/tmp),因为默认基本目录可能无法被 Docker 运行时访问。

创建新版本

要创建新版本,克隆存储库,使用 pip install -e '.[dev]' 安装开发依赖项,然后执行 bumpver update。这将

  1. 创建带有提升版本的标记版本并将其推送到存储库。
  2. 触发创建 GitHub 版本的 GitHub 操作工作流程。

附加说明

  • 使用 --dry 选项预览版本更改。
  • 版本应直接在 main 分支上创建,因此您需要特殊权限才能写入它。
  • 版本标签(例如 a/b/rc)由最后一个版本确定。使用 --tag 选项切换版本标签。

作者

另请参阅 贡献者列表

引用

请 AiiDAlab 用户在他们的工作中引用以下出版物

A. V. Yakutovich 等人,《计算材料科学》188卷,110165页(2021年)。DOI:10.1016/j.commatsci.2020.110165

联系方式

aiidalab@materialscloud.org

贡献

欢迎以任何形式做出贡献。请参阅CONTRIBUTING.md获取贡献指南。

MIT许可协议

版权所有(c)2021 Carl Simon Adorf (EPFL)

保留所有权利。

在此特此授权,免费提供给任何获得本软件及其相关文档文件(以下简称“软件”)副本的个人,在不受限制的情况下处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,并允许向提供软件的个人授予上述权利,前提是以下条件

上述版权声明和本许可声明应包含在软件的所有副本或实质部分中。

软件按“原样”提供,不提供任何形式的保证,无论是明示的、暗示的,还是包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论是在合同、侵权或其他法律行为中产生的,无论源于、因之或与此软件的使用或其他方式有关。

致谢

本工作得到瑞士国家科学基金会资助的《MARVEL国家竞争力研究中心》的支持,该项目由《Horizon 2020》下的《MARKETPLACE》项目资助,该项目的资金来自欧盟《Horizon 2020》下的H2020-NMBP-25-2017招标(项目编号760173),以及由《Horizon 2020 EINFRA-5》项目资助的《MaX欧洲卓越中心》的支持,项目编号676598。

MARVEL MaX MarketPlace

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。

源代码分发

aiidalab_launch-2024.1020.tar.gz (98.9 kB 查看哈希值)

上传时间 源代码

构建分发

aiidalab_launch-2024.1020-py3-none-any.whl (25.4 kB 查看哈希值)

上传时间 Python 3

支持者