Yambo via Docker: Difference between revisions

From The Yambo Project
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 40: Line 40:
  ./drun yambo -F yambo.in -J yambo.out
  ./drun yambo -F yambo.in -J yambo.out


Some useful options of the script drun are:
Some useful options of the script drun:


  -np N              # n. of MPI tasks for a parallel run
  -np N              # n. of MPI tasks for a parallel run

Revision as of 21:56, 30 March 2022

An alternative to get the Yambo code is to install the Yambo container in your machine and this can be done in few steps:

  • Install the docker platform (Linux or Mac). Follow the instruction in the docker website.

It is possible to run Docker by a normal user without the sudo privileges. In order to do that you have to add your username to the group "docker" (suggested on Linux!).

For Linux users:

 sudo groupadd docker
 sudo usermod -aG docker $USER

For Mac users:

 sudo dscl . create /Groups/docker
 sudo dseditgroup -o edit -a $USER -t user docker

Log out and log back in so that your group membership is re-evaluated.

If you you prefer to use sudo please remember to add the "sudo" command before all the commands below.

  • Download the script file "drun" that will help you hiding the many options needed by the container:
wget https://raw.githubusercontent.com/nicspalla/yambo-containers/main/drun

then give the file execute privileges:

chmod +x drun

Move (or copy) this file in the directory where you want to use Yambo and use it as prefix of your Yambo calculation.

  • First you have to initialize the environment needed by the container:
./drun -i

this command will pull the container if not already done and will create a file named env.txt needed by the container to run Yambo.

  • Now you can run yambo like in this example:
./drun yambo -F yambo.in -J yambo.out

Some useful options of the script drun:

-np N              # n. of MPI tasks for a parallel run
-t N               # n. of threads per task
--env-file FILE    # to use a different environment file
-i                 # container initialization

If the yambo container is working correctly this command

./drun yambo -h

should provide in output the help for yambo usage.

  • To delete the container images downloaded you can use this command:
docker image rm <image_name>

To remove all the stopped containers use this command:

docker system prune