本家様 https://www.ccpem.ac.uk/docs/doppio/user_guide.html
入手先 https://www.ccpem.ac.uk/download.php
CCP-EMの次のバージョン

パイプラインというかcrym-em関係プログラムを取りまとめているアプリって感じでしょうか
scipionと同じかな. Pipeline PilotとかKNIMEとか

対象マシン

[root@rockylinux9 ~]# cat /etc/redhat-release
Rocky Linux release 9.5 (Blue Onyx)
[root@rockylinux9 ~]# uname -r
5.14.0-503.21.1.el9_5.x86_64
[root@rockylinux9 ~]# cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module  565.77  Wed Nov 27 23:33:08 UTC 2024
GCC version:  gcc version 11.5.0 20240719 (Red Hat 11.5.0-2) (GCC)
[root@rockylinux9 ~]#

構築

https://www.ccpem.ac.uk/software/downloads/の「Prerequisites」に書かれているアプリ/ツールを入れます.
relionはRelion、CCP4はccp4、package-ccpem2は下記で説明します. あとModellerはライセンス品なのでここでは説明しません. XQuartzはお使いのPCがmacの場合のお話. windowsならMobaXtermでいいかも

っで「package-ccpem2」のインストールです.
組み込みにはcondaを使うようでまずその準備を行います. 本家様はmicromambaかminicondaを進めていますが、ここでは miniforge3 を使ってます. anacondaでも構わないと思いますが
ここでは pyenvの上にcondaを敷いて使ってます.

git clone https://github.com/yyuu/pyenv.git /apps/pyenv
export PYENV_ROOT=/apps/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
pyenv install miniforge3-25.1.1-0

っで「package-ccpem2」を取得してcondaに組み込みます

[root@rockylinux9 ~]# source /apps/pyenv/versions/miniforge3-25.1.1-0/etc/profile.d/conda.sh
 
 
[root@rockylinux9 ~]# cd /apps/src/
[root@rockylinux9 src]# git clone https://gitlab.com/ccpem/package-ccpem2.git
[root@rockylinux9 src]# cd package-ccpem2/setup_ext_env/
[root@rockylinux9 setup_ext_env]#

そのまま入れたらエラーが出たので調べて「install_doppioext.sh」のpatchを作ってみた. たぶんこれで合っていると思うのだが..

diff --git a/setup_ext_env/install_doppioext.sh b/setup_ext_env/install_doppioext.sh
index 28b58ef..48eda2d 100755
--- a/setup_ext_env/install_doppioext.sh
+++ b/setup_ext_env/install_doppioext.sh
@@ -125,7 +125,7 @@ while read -r name eyml ename efiles; do
             if { $conda_type env list | grep $ename; } >/dev/null 2>&1 && [ -d "$ENV_DIR/doppio-$conda_type/envs/$ename" ]; then
                 if [ $process_type == "create" ] || [ $process_type == "create_wrap" ]; then
                     echo "## Removing and Re-creating" $ename
-                    yes | $conda_type remove -p "$ENV_DIR/doppio-$conda_type/envs/$ename" --all >/dev/null
+                    yes | $conda_type remove -p "$ENV_DIR/doppio-$conda_type/envs/$ename" >/dev/null
                     yes | $conda_create create -f "env_ymls/$eyml" -p "$ENV_DIR/doppio-$conda_type/envs/$ename" >/dev/null
                 elif [ $process_type == "update" ] || [ $process_type == "update_wrap" ]; then
                     echo "## Updating " $ename
@@ -143,10 +143,10 @@ done < $BASH_DIR/$list_yml
 if [ $process_type != "wrap" ]; then
     if { $conda_type env list | grep ext_base; } >/dev/null 2>&1 && [ -d "$ENV_DIR/doppio-$conda_type/envs/ext_base" ]; then
         echo "## Removing ext_base"
-        yes | $conda_create remove -p "$ENV_DIR/doppio-$conda_type/envs/ext_base" --all > /dev/null
+        yes | $conda_create remove -p "$ENV_DIR/doppio-$conda_type/envs/ext_base" > /dev/null
+    fi
     echo "## Creating ext_base"
     yes | $conda_create create -f env_ymls/ext_base.yml -p "$ENV_DIR/doppio-$conda_type/envs/ext_base" > /dev/null
-    fi
 fi
 
 # MODELANGELO SETUP

これを適用して、インストール先を環境変数で定義します

[root@rockylinux9 setup_ext_env]# export DOPPIOEXT_ENV=/apps/doppio
[root@rockylinux9 setup_ext_env]# export DOPPIOEXT_EXE=/apps/doppio

っで、インストール

[root@rockylinux9 setup_ext_env]# ./install_doppioext.sh gpu
## env dir for install:  /apps/doppio
## executables will be wrapped in :  /apps/doppio
/usr/bin/which: no micromamba in (/apps/pyenv/versions/miniforge3-25.1.1-0/condabin:/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)
## conda type:  conda
Arguments passed:  gpu
Environment yml list file:  list_env_gpu
Process type:  create_wrap
Set up environments for:  topaz checkmysequence emda modelcraft tempy locscale emdbva
## Creating run_topaz
## Creating checkmysequence_env
## Creating emda_env
## Creating modelcraft_env
## Creating tempy_env
## Creating gpu_locscale
## Creating emdbva_env
## Creating ext_base
## Wrapping executables: run_topaz
## Wrapping executables: checkmysequence_env
## Wrapping executables: emda_env
## Wrapping executables: modelcraft_env
## Wrapping executables: tempy_env
## Wrapping executables: gpu_locscale
## Wrapping executables: emdbva_env
 
[root@rockylinux9 setup_ext_env]#

この段階で topaz checkmysequence emda modelcraft tempy locscale emdbva の環境は作れました
次にslicendice環境を作りますが、ymlを一部修正します.

diff --git a/setup_ext_env/env_ymls/slicendice_env_cpu.yml b/setup_ext_env/env_ymls/slicendice_env_cpu.yml
index 273a329..da15b15 100644
--- a/setup_ext_env/env_ymls/slicendice_env_cpu.yml
+++ b/setup_ext_env/env_ymls/slicendice_env_cpu.yml
@@ -3,13 +3,15 @@ channels:
   - conda-forge
   - omnia
 dependencies:
-  - python==3.9
+  - python=3.9
   - gfortran
   - cxx-compiler
   - numpy
   - pandas==1.2.5
   - pip
   - cython
+  - libxcrypt
   - pip:
       - biotempy
       - struvolpy==1.0.8
+      - 'setuptools<74'
diff --git a/setup_ext_env/env_ymls/slicendice_env_gpu.yml b/setup_ext_env/env_ymls/slicendice_env_gpu.yml
index ef83d44..a11bba9 100644
--- a/setup_ext_env/env_ymls/slicendice_env_gpu.yml
+++ b/setup_ext_env/env_ymls/slicendice_env_gpu.yml
@@ -41,6 +41,7 @@ dependencies:
   - wheel=0.42.0=pyhd8ed1ab_0
   - xz=5.2.6=h166bdaf_0
   - zstd=1.5.5=hfc55251_0
+  - libxcrypt
   - pip:
       - cython==3.0.6
       - scipy==1.10.1

その上で

[root@rockylinux9 setup_ext_env]# ./install_doppioext.sh slicendice gpu
## env dir for install:  /apps/doppio
## executables will be wrapped in :  /apps/doppio
/usr/bin/which: no micromamba in (/apps/pyenv/versions/miniforge3-25.1.1-0/condabin:/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)
## conda type:  conda
Arguments passed:  slicendice gpu
Environment yml list file:  list_env_slicendice_gpu
Process type:  create_wrap
Set up environments for:  slicendice slicendice
## Creating slicendice_env
## Creating gpu_slicendice_env
## Removing ext_base
## Creating ext_base
Writing SlicenDice set up script
##################################
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, (略
## Wrapping executables: slicendice_env
## Wrapping executables: gpu_slicendice_env
 
[root@rockylinux9 setup_ext_env]#

次にmodelangelo なのですが、今(2025.3)時点でソースコードレベルでmodelangeloの導入コードが削除されていた.
https://gitlab.com/ccpem/package-ccpem2/-/commit/95bb1cb0c8066070a63ea888ff219f166817a0d1
理由は分からない.

なのでこれで「package-ccpem2」の準備は完了なのかなと.

本体のインストール.

っで本体のインストールです.

[root@rockylinux9 ~]# cd /apps/doppio
[root@rockylinux9 doppio]# ls -l
total 0
drwxr-xr-x. 11 root root 191 Mar 16 10:42 conda_wrappers
drwxr-xr-x.  3 root root  18 Mar 16 03:46 doppio-conda
 
[root@rockylinux9 doppio]#
[root@rockylinux9 doppio]# wget https://www.ccpem.ac.uk/downloads/doppio/doppio-linux-1.2.0.zip    <-- 326 MB
 
[root@rockylinux9 doppio]# unzip doppio-linux-1.2.0.zip
[root@rockylinux9 doppio]# ls -lF
total 200864
drwxr-xr-x. 11 root root       191 Mar 16 10:42 conda_wrappers/
drwxr-xr-x.  3 root root        18 Mar 16 03:46 doppio-conda/
drwxr-xr-x.  4 root root        59 Mar 16 10:45 doppio-config/
-rwxr-xr-x.  1 root root 205675672 Jan 29 21:07 doppio-desktop.AppImage*
drwxr-xr-x. 54 root root      4096 Jan 29 21:07 doppio-web/
[root@rockylinux9 doppio]#

これで本体のインストールは完了.

っでEnvironmentModulesは
「/apps/modulefiles/doppio」

#%Module1.0
 
module load phenix
module load ccp4
module load ccpem
 
set root /apps/doppio/conda_wrappers
prepend-path PATH $root/emdbva_env:$root/gpu_locscale:$root/tempy_env:$root/modelcraft_env:$root/emda_env:$root/checkmysequence_env:$root/run_topaz:$root/slicendice_env
 
set-alias doppio /apps/doppio/doppio-desktop.AppImage

とします

使い方ですが、

module use /apps/modulefiles
module load doppio

として
ここで「doppio」と実行すればアプリが使える。
doppio向けのフォルダが自動的に作成されます($HOME/ccpem-project)
2025y03m16d_105228127.png

けど、展開した直後では使えるアプリがあんまりなく、追加でアプリを設置登録する必要があるみたい。
doppioの「NEW JOB」欄を開くと(Show unavailable jobsを有効にして)
2024y08m21d_232331189.png
と登録されていないアプリならグレーアウトしている。

上記は「module load ccpem」を外した場合です。これを有効にしているとccpemに入っているrelionが有効になって、グレーアウトしているアイコンが利用可能になります。
phenix, ccp4, ccpem をロードしてもグレーアウトなアイコンがあります。恐らくParaKeetTEMPy-ReFFかなと思ってますが、この辺までは未調査です。

ブラウザ経由で使う場合

[saber@rockylinux9 ~]$ cd /apps/doppio/
[saber@rockylinux9 doppio]$ ./doppio-web/doppio-web -p 8080 --no-browser
fc-list: /apps/doppio/doppio-web/libz.so.1: version `ZLIB_1.2.9' not found (required by /lib64/libpng16.so.16)
 
Doppio API token: a4148efe533634048e0775ff7a0aeb4f4e19345cfdfd32031e305750a7475ebc
 
INFO:     Started server process [45630]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://127.0.0.1:8080 (Press CTRL+C to quit)
INFO:     Doppio is now running.
 
Go to this link in your browser to open Doppio:
 
    file:///home/saber/.local/share/doppio/doppio-45630-open.html
 
Or you can access Doppio directly using these details:
 
Server URL: http://127.0.0.1:8080/
Access token: a4148efe533634048e0775ff7a0aeb4f4e19345cfdfd32031e305750a7475ebc
 
Press Ctrl+C to quit this Doppio server
 :

と、ここでは8080portを使用したままにして、ローカルのPCにSSHトンネルを作ります。
MobaXtermならメニューの「Tunneling」をクリックして下記のようにします。ここでは rockylinux9 というマシンのlocalhost:8080 とトンネルを作ります
2025y03m16d_113432556.png
これを機能させて、(▼印を押下)
2025y03m16d_113710437.png
PCのブラウザで「http://localhost:8080」を開いて、トークンを入れます。このトークンは「./doppio-web/doppio-web」を実行した時に提示される文字列です
2025y03m16d_113853155.png
「submit」ボタンを押下すると、ブラウザ内で doppio が使えます

2025y03m16d_114141115.png

*[PC] -- [Doppio] なら 上記でいいが、[PC] -- [中継サーバ] -- [Doppio] というような接続なら「./doppio-web/doppio-web -p 8080 --host 0.0.0.0 --no-browser」とする

めも

アプリよりブラウザ越しで使った方が動作は快適

最新の60件
2025-05-24 2025-05-22 2025-05-21 2025-05-20 2025-05-19 2025-05-18 2025-05-17 2025-05-14 2025-05-13 2025-05-12 2025-05-11 2025-05-08 2025-05-07 2025-05-06 2025-05-05 2025-05-04 2025-05-03 2025-04-27 2025-04-26 2025-04-25 2025-04-24 2025-04-17 2025-04-13 2025-04-02 2025-04-01 2025-03-31 2025-03-29 2025-03-28 2025-03-27 2025-03-26 2025-03-23 2025-03-22 2025-03-20

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2025-03-16 (日) 13:20:08