Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
nomad-lab
workflows-workshop
Commits
dcc3de38
Commit
dcc3de38
authored
Mar 25, 2021
by
Adam Fekete
Browse files
updated dockerfile
parent
4c296439
Changes
4
Hide whitespace changes
Inline
Side-by-side
Dockerfile
0 → 100644
View file @
dcc3de38
# https://github.com/jupyter/docker-stacks
# https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html
FROM
jupyter/scipy-notebook
LABEL
maintainer="Gian-Marco Rignanese <gian-marco.rignanese@uclouvain.be>"
# # Fix DL4006
# SHELL ["/bin/bash", "-o", "pipefail", "-c"]
# Abinit installation
# ===================
# # 1. compiler: gfortran
# # 2. MPI libraries - choice for Open MPI: mpi-default-dev libopenmpi-dev
# # 3. math libraries - choice for lapack and blas: liblapack-dev libblas-dev
# # 4. mandatory libraries:libhdf5-dev libnetcdf-dev libnetcdff-dev libpnetcdf-dev libxc-dev libfftw3-dev libxml2-dev
USER
root
RUN
apt-get update
\
&&
apt
install
-y
--no-install-recommends
\
gfortran
\
mpi-default-dev libopenmpi-dev
\
liblapack-dev libblas-dev
\
libhdf5-dev libnetcdf-dev libnetcdff-dev libpnetcdf-dev libxc-dev
\
libfftw3-dev libxml2-dev
\
mongodb
\
slurmd slurm-client slurmctld
\
&&
rm
-rf
/var/lib/apt/lists/
*
WORKDIR
/opt
ARG
abinit_version="9.4.0"
COPY
configs/abinit_config.ac9 /opt/abinit-${abinit_version}/build/abinit_config.ac9
RUN
wget
-k
"https://www.abinit.org/sites/default/files/packages/abinit-
${
abinit_version
}
.tar.gz"
\
&&
tar
xzf abinit-
${
abinit_version
}
.tar.gz
\
&&
cd
abinit-
${
abinit_version
}
\
&&
cd
build
\
&&
../configure
--with-config-file
=
'abinit_config.ac9'
\
&&
make
-j4
\
&&
make
install
\
&&
rm
/opt/abinit-
${
abinit_version
}
.tar.gz
\
# && rm -rf /opt/abinit-${abinit_version}
&& fix-permissions "/opt/abinit-${abinit_version}"
USER
$NB_UID
# Install Python 3 packages
# =========================
RUN
conda
install
--quiet
--yes
\
# 'ase'
\
# 'pymatgen'
\
# 'atomate'
\
# 'matminer'
\
# 'jupyterlab-git'
\
'abipy'
\
'jupyter_contrib_nbextensions'
\
'jupyter_nbextensions_configurator'
\
&&
pip
install
--no-cache-dir
jupyter-jsmol fireworks
\
&&
conda clean
--all
-f
-y
\
&&
fix-permissions
"
${
CONDA_DIR
}
"
\
&&
fix-permissions
"/home/
${
NB_USER
}
"
# Pseudo-dojo
USER
root
WORKDIR
/opt
RUN
git clone
--depth
1 https://github.com/abinit/pseudo_dojo.git
\
&&
cd
pseudo_dojo
\
&&
fix-permissions
"/opt/pseudo_dojo"
USER
$NB_UID
RUN
pip
install
-e
pseudo_dojo
WORKDIR
$HOME
configs/abinit_config.ac9
0 → 100644
View file @
dcc3de38
# MPI settings
with_mpi="yes"
enable_mpi_io="yes"
# linear algebra settings
with_linalg_flavor="netlib"
LINALG_LIBS="-L/usr/lib/x86_64-linux-gnu -llapack -lblas"
# mandatory libraries
with_libxc="yes"
with_hdf5="yes"
with_netcdf="yes"
with_netcdf_fortran="yes"
# fast fourier settings
with_fft_flavor="fftw3"
FFTW3_CPPFLAGS="-I/usr/include"
FFTW3_FCFLAGS="-I/usr/include"
FFTW3_LIBS="-L/usr/lib/x86_64-linux-gnu -lfftw3 -lfftw3f"
# XML2 library (used by multibinit)
with_libxml2="yes"
LIBXML2_FCFLAGS="-I/usr/lib/x86_64-linux-gnu/"
LIBXML2_LIBS="-L/usr/include/libxml2/libxml/ -lxmlf90"
configs/manager.yml
0 → 100644
View file @
dcc3de38
## Local runner ##############
# policy:
# autoparal: 0
qadapters
:
# List of `qadapters` objects (just one in this simplified example)
-
priority
:
1
queue
:
qtype
:
shell
# "Submit" jobs via the shell.
qname
:
localhost
# "Submit" to the localhost queue
# (it's a fake queue in this case)
job
:
mpi_runner
:
"
mpirun"
# pre_run: "export PATH=$HOME/git_repos/abinit/build_gcc/src/98_main:$PATH"
limits
:
timelimit
:
24:00:00
# Time-limit for each task.
max_cores
:
64
# Max number of cores that can be used by a single task.
hint_cores
:
8
hardware
:
num_nodes
:
1
sockets_per_node
:
2
cores_per_socket
:
64
mem_per_node
:
256 Gb
##############################
configs/scheduler.yml
0 → 100644
View file @
dcc3de38
seconds
:
30
# number of seconds to wait.
#minutes: 0 # number of minutes to wait.
#hours: 0 # number of hours to wait.
# Limit on the number of jobs that can be present in the queue. (DEFAULT: 200)
max_njobs_inqueue
:
8
# Maximum number of cores that can be used by the scheduler.
max_ncores_used
:
128
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment