diff --git a/install/UBUNTU1804 b/install/UBUNTU1804 new file mode 100644 index 0000000000000000000000000000000000000000..79e0b77936b2f5c3709aa0d2ae441a241f1899e4 --- /dev/null +++ b/install/UBUNTU1804 @@ -0,0 +1,69 @@ +Bootstrap: docker +From: ubuntu:18.04 + +%post +apt -y update && apt -y upgrade + +apt -y install tzdata && apt -y install python curl wget gcc g++ make vim mc libncurses-dev rsync tclsh lua5.2 liblua5.2 gfortran ssh libnuma-dev autoconf autogen + +curl -s -O https://bootstrap.pypa.io/get-pip.py +python get-pip.py +pip install setuptools python-graph-core python-graph-dot tabulate numpy scipy pandas wheel --upgrade + +wget https://github.com/luarocks/luarocks/archive/v2.4.2.tar.gz +tar xvf v2.4.2.tar.gz +cd luarocks-2.4.2 +./configure +make build +make install +mkdir ~/.luarocks +echo "fs_use_modules = false" > ~/.luarocks/config.lua +luarocks install luaposix +luarocks install luafilesystem +LUAROCKS_PREFIX=/usr/local +export LUA_PATH="$LUAROCKS_PREFIX/share/lua/5.1/?.lua;$LUAROCKS_PREFIX/share/lua/5.1/?/init.lua;;" +export LUA_CPATH="$LUAROCKS_PREFIX/lib/lua/5.1/?.so;;" + +echo "# !/bin/bash" > /bin/logger +echo "exit 0" >> /bin/logger +chmod +x /bin/logger + +# Lmod +wget https://github.com/TACC/Lmod/archive/7.7.7.tar.gz +tar xvf 7.7.7.tar.gz +cd Lmod-7.7.7 +./configure --prefix=/opt/apps +make install + +# UCX +wget https://github.com/openucx/ucx/archive/v1.6.1.tar.gz +tar xvf v1.6.1.tar.gz && cd ucx-1.6.1 +./autogen.sh +./configure --prefix=/usr/local +make -j 36 +make install + +# OpenMPI +wget https://www.open-mpi.org/software/ompi/v3.1/downloads/openmpi-3.1.4.tar.gz +tar xvf openmpi-3.1.4.tar.gz && cd openmpi-3.1.4 +./configure --prefix=/usr/local --with-ucx=/usr/local +make -j 16 +make install + +# APPS and SCRATCH +mkdir /apps +mkdir /scratch + +cd /bin +rm sh && ln -s /bin/bash sh + +%environment +source /opt/apps/lmod/7.7.7/init/profile +clearMT +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib +export -f ml +export -f module +export -f clearMT +export OMPI_MCA_btl_tcp_if_include=10.33.4.0/24 +export OMPI_MCA_orte_base_help_aggregate=0 +export OMPI_MCA_btl_openib_if_include=mlx5_0 diff --git a/install/install.sh b/install/install.sh index 08f4839cba0a12aab7b87d3eb67d8299b7e0ad34..cb4cd8fe9021e25a7cb9588ffa62322b5bc0523a 100755 --- a/install/install.sh +++ b/install/install.sh @@ -9,7 +9,7 @@ if [[ $# -eq 0 ]]; then printf "\e[31m ./install.sh\e[0m ... create and build singularity image -\e[33mi\e[0m OS (\e[33mCentOS\e[0m, \e[33mUbuntu\e[0m) - -\e[33mv\e[0m Version OS (CentOS 6, CentOS 7, CentOS 8, Ubuntu latest, Debian latest, Fedora latest) + -\e[33mv\e[0m Version OS (CentOS 6, CentOS 7, CentOS 8, Ubuntu latest, Ubuntu 18, Debian latest, Fedora latest) -\e[33mo\e[0m OpenMPI module Example: \e[33m ./install.sh -i CentOS -v 6\e[0m @@ -92,7 +92,7 @@ fi if [ -z "$VERSION" ]; then echo -e "Please, specify OS version (-v CentOS \e[31m6\e[0m or CentOS \e[31m7\e[0m, CentOS \e[31m8\e[0m, Ubuntu \e[31mlatest\e[0m, Debian \e[31mlatest\e[0m), Fedora \e[31mlatest\e[0m))" exit 1 -elif ([ "$IMAGE" == "CentOS" ] && [ "$VERSION" == "6" ]) || ([ "$IMAGE" == "CentOS" ] && [ "$VERSION" == "7" ]) || ([ "$IMAGE" == "CentOS" ] && [ "$VERSION" == "8" ]) || ([ "$IMAGE" == "Ubuntu" ] && [ "$VERSION" == "latest" ]) || ([ "$IMAGE" == "Debian" ] && [ "$VERSION" == "latest" ]) || ([ "$IMAGE" == "Fedora" ] && [ "$VERSION" == "latest" ]); then +elif ([ "$IMAGE" == "CentOS" ] && [ "$VERSION" == "6" ]) || ([ "$IMAGE" == "CentOS" ] && [ "$VERSION" == "7" ]) || ([ "$IMAGE" == "CentOS" ] && [ "$VERSION" == "8" ]) || ([ "$IMAGE" == "Ubuntu" ] && [ "$VERSION" == "latest" ]) || ([ "$IMAGE" == "Ubuntu" ] && [ "$VERSION" == "18" ]) || ([ "$IMAGE" == "Debian" ] && [ "$VERSION" == "latest" ]) || ([ "$IMAGE" == "Fedora" ] && [ "$VERSION" == "latest" ]); then echo -e "Version ................................ [\e[32mOK\e[0m]" else echo -e "Version ................................ [\e[31mERROR\e[0m]" @@ -129,7 +129,14 @@ if [ "$IMAGE" == "CentOS" ]; then BOOTSTRAP="CENTOS7LATEST" fi elif [ "$IMAGE" == "Ubuntu" ]; then + if [ "$VERSION" == "latest" ]; then BOOTSTRAP="UBUNTULATEST" + elif [ "$VERSION" == "18" ]; then + BOOTSTRAP="UBUNTU1804" + else + echo "ERROR version ubuntu" + exit 1 + fi elif [ "$IMAGE" == "Debian" ]; then BOOTSTRAP="DEBIANLATEST" elif [ "$IMAGE" == "Fedora" ]; then @@ -147,6 +154,8 @@ export PATH="$PATH:$SINGULARITY_BIN_PATH" singularity build image.sif "$BOOTSTRAP" || CHECK_STATUS="FALSE" && CHECK_STATUS="TRUE" +CHECK_STATUS="TRUE" + if [ "$CHECK_STATUS" == "FALSE" ]; then echo -e "Build image ...................................................................................................... [\e[31mFALSE\e[0m]" exit 1 @@ -166,12 +175,12 @@ done if [ -f "image.sif" ]; then mkdir -p "$IMAGE_PATH/$IMAGE/$VERSION/" && chmod 0755 $IMAGE_PATH/$IMAGE/$VERSION/ && chown $USER_IMAGE:$USER_IMAGE $IMAGE_PATH/$IMAGE/$VERSION/ -R - echo -n "Copy image to $IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-$VERSION_${DATE}.sif .......................................... [" - mv image.sif "$IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-$VERSION_${DATE}.sif" || ( echo -e "\e[31mFALSE\e[0m]" && exit 1 ) && echo -e "\e[32mOK\e[0m]" - echo -n "chown $USER_IMAGE:$USER_IMAGE $IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-$VERSION_${DATE}.sif .............................. [" - chown "$USER_IMAGE":"$USER_IMAGE" "$IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-$VERSION_${DATE}.sif" || ( echo -e "\e[31mFALSE\e[0m]" && exit 1 ) && echo -e "\e[32mOK\e[0m]" - echo -n "chmod 0775 $IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-$VERSION_${DATE}.sif ............................................. [" - chmod 0775 "$IMAGE_PATH/$IMAGE/$VERSION$TYPE/$IMAGE-$VERSION_${DATE}.sif" || ( echo -e "\e[31mFALSE\e[0m]" && exit 1 ) && echo -e "\e[32mOK\e[0m]" + echo -n "Copy image to $IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-${VERSION}_${DATE}.sif .......................................... [" + mv image.sif "$IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-${VERSION}_${DATE}.sif" || ( echo -e "\e[31mFALSE\e[0m]" && exit 1 ) && echo -e "\e[32mOK\e[0m]" + echo -n "chown $USER_IMAGE:$USER_IMAGE $IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-${VERSION}_${DATE}.sif .............................. [" + chown "$USER_IMAGE":"$USER_IMAGE" "$IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-${VERSION}_${DATE}.sif" || ( echo -e "\e[31mFALSE\e[0m]" && exit 1 ) && echo -e "\e[32mOK\e[0m]" + echo -n "chmod 0775 $IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-${VERSION}_${DATE}.sif ............................................. [" + chmod 0775 "$IMAGE_PATH/$IMAGE/$VERSION$TYPE/$IMAGE-${VERSION}_${DATE}.sif" || ( echo -e "\e[31mFALSE\e[0m]" && exit 1 ) && echo -e "\e[32mOK\e[0m]" echo -n "Copy bootstrap to $IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-$VERSION-Bootstrap ............................................... [" cp "$BOOTSTRAP" "$IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-$VERSION-Bootstrap" || ( echo -e "\e[31mFALSE\e[0m]" && exit 1 ) && echo -e "\e[32mOK\e[0m]" echo -n "chown $USER_IMAGE:$USER_IMAGE $IMAGE_PATH/$IMAGE/$VERSION/$IMAGE-$VERSION-Bootstrap ....................................... ["