【问题标题】:How can I install psi4 in a docker container with jupyter environment?如何在带有 jupyter 环境的 docker 容器中安装 psi4?
【发布时间】:2021-03-31 12:39:33
【问题描述】:

我尝试安装psi4jupyter/minimal-notebook 容器中进行量子化学计算。

但是,如下代码块所示,由于UnsatisfiableError,我无法安装。

(base) jovyan@17285cef33b0:~/work$ conda create -n psi4 python=3.6
Collecting package metadata (current_repodata.json): done
Solving environment: done

....
(ellipsis)

(base) jovyan@17285cef33b0:~/work$ conda activate psi4

(psi4) jovyan@17285cef33b0:~/work$ conda install psi4 -c psi4
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: \ 
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed                                                                                                                                                                                                                  

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

(psi4) jovyan@17285cef33b0:~/work$ 

它没有显示不满意的地方。

我不想使用anaconda,因为我需要为anaconda的商业用途付费,并且我想使用conda-forge作为运行psi4的环境。我也想用docker,因为我想有相同的条件来运行程序。

你有什么好主意来解决这个错误吗? 或者有什么环境可以满足我的愿望?

我的环境是 Windows 10,我使用的是 Docker Desktop WSL 2 后端。

【问题讨论】:

    标签: python docker jupyter-notebook anaconda


    【解决方案1】:

    之前的回答已被删除,因为我刚刚粘贴了我的博文链接。我从我的博客文章中提取了如何构建的主要步骤并进行了描述。

    我自己在一个 docker 容器上构建并安装了 Psi4。我在我的博客上写了一篇关于如何做到这一点的文章。请参阅以下博客文章了解更多详细信息。

    https://solkul.hatenablog.com/entry/2021/04/23/002237

    以下是构建它的主要步骤。

    基本上你可以按照这个Psi4 documentation来构建。

    1。克隆 Psi4 存储库

    克隆 Psi4 存储库。

    (base) root$ git clone https://github.com/psi4/psi4.git
    (base) root$ cd psi4
    

    2。创建新的 conda 环境

    以 root 身份启动 bash。 Psi4 只支持到 python 3.7,所以我应该为 python 3.7 创建一个 conda 环境。

    (base) root$ conda create -n quantum python=3.7
    (base) root$ conda activate quantum
    (quantum) root$
    

    3。安装构建所需的包

    键入以下命令以安装构建所需的软件包。 Psi4 documentation 列出了构建所需的工具和依赖项。

    (quantum) root$ apt-get update
    (quantum) root$ apt-get install -y build-essential cmake clang libssl-dev
    (quantum) root$ apt-get install -y libopenblas-base libopenblas-dev
    (quantum) root$ conda install -y numpy networkx pint pydantic
    (quantum) root$ apt-get install -y libmpfr-dev libeigen3-dev
    

    4。构建和安装

    是时候建造了!键入以下命令以配置和生成进行构建。

    (quantum) root /psi4$ mkdir build
    (quantum) root /psi4$ cd build
    (quantum) root /psi4/build$ cmake ..
    

    让我们构建吧!

    (quantum) root /psi4/build$ make -j`getconf _NPROCESSORS_ONLN`
    

    此构建需要几个小时。

    构建完成后,输入以下命令进行安装。

    (quantum) root /psi4/build$ make install
    

    5。将安装目录的lib追加到python导入路径

    在默认配置中,二进制文件、包含、库等应安装在/usr/local/psi4 中。为了将 Psi4 用作 python 模块,需要将 /usr/local/psi4/lib 附加到 python 导入路径。您还应该在我刚刚创建为 python 3.7 环境的量子环境中使用 Psi4。您可以通过每次将目录附加到sys.path 来执行此操作,如下所示。

    import sys
    sys.path.append("usr/local/psi4/lib")
    

    从现在开始,您可以导入 Psi4。

    import psi4
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-27
      • 1970-01-01
      • 1970-01-01
      • 2016-02-28
      • 2017-11-11
      • 2021-06-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多