diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000000000000000000000000000000000000..8ad70ada80584eaff21adfe328fd559e486c82e1 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,13 @@ +tutorial/ + + +**/.git + +**/.ipython/ +**/.keras/ +**/.local/ +**/.cache/ +**/.config/ +**/.ipynb_checkpoints/ + + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..ffff2848421a8b2cb5a8ed97f43abcd8fd743fbf --- /dev/null +++ b/.gitignore @@ -0,0 +1,115 @@ +tutorial/ + + +.idea/ +.ipython/ +.keras/ +.local/ + +.DS_Store + + +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..32b18138ff9f8bfca902d35693afa481251a86b7 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,45 @@ +FROM jupyter/scipy-notebook:python-3.7 + +# ================================================================================ +# Linux applications and libraries +# ================================================================================ + +# USER root +# +# RUN apt-get update --yes \ +# && apt-get install --yes --no-install-recommends \ +# openmpi-bin \ +# libopenmpi-dev \ +# cmake \ +# libblas-dev \ +# liblapack-dev \ +# gfortran \ +# && apt-get clean && rm -rf /var/lib/apt/lists/* +# +# USER ${NB_UID} + +# ================================================================================ +# Python environment +# ================================================================================ + +# RUN mamba install --quiet --yes \ +# "nbgitpuller" \ +# && mamba clean --all -f -y \ +# && fix-permissions "${CONDA_DIR}" \ +# && fix-permissions "/home/${NB_USER}" + +RUN pip install --prefer-binary --no-cache-dir \ + "mdanalysis==2.1.0" \ + "nglview==3.0.3" \ + "scikit-learn" \ + "pymatgen" \ + "ipywidgets>=7.6.0,<8" \ + "git+https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR.git@develop#egg=nomad-lab" \ + && fix-permissions "${CONDA_DIR}" \ + && fix-permissions "/home/${NB_USER}" + +# Switch back to jovyan to avoid accidental container runs as root +USER ${NB_UID} +WORKDIR "${HOME}" + +# COPY --chown=${NB_UID} tutorials/ . diff --git a/README.md b/README.md index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..acfa2b0174c29e95fc3778f6bd499e9b2f4ba232 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,11 @@ +## Getting started + +Building the docker image: +``` +docker build -t nomadmdtutorial:latest . +``` + +Starting th jupyter notebook: +``` +docker run --rm -it -p 8888:8888 -v "${PWD}":/home/jovyan/work nomadmdtutorial:latest +```