Created JupyterHub install and config script

This commit is contained in:
Adam Parler 2023-07-09 16:05:54 -07:00
parent 8af4dd434e
commit 48f4353ac4

68
jupyterhub_install.sh Executable file
View file

@ -0,0 +1,68 @@
#!/bin/bash
## Define admin user account
export ADMIN_ACCOUNT=sys-admin
## Define bulk storage location
if [ -z "$ZFS_DIR" ]
then
ZFS_DIR=/data
fi
## Ensure HOME directories are stored in ${ZFS_DIR}/home
awk '{sub("#HOME=/home","HOME=/home")} {print}' /etc/default/useradd > /tmp/temp.txt && mv /tmp/temp.txt /etc/default/useradd
awk '{sub("# HOME=/home","HOME=/home")} {print}' /etc/default/useradd > /tmp/temp.txt && mv /tmp/temp.txt /etc/default/useradd
awk -v dir=${ZFS_DIR}/home '{sub("HOME=/home","HOME="dir)} {print}' /etc/default/useradd > /tmp/temp.txt && mv /tmp/temp.txt /etc/default/useradd
# export TLJH_INSTALL_PREFIX=${ZFS_DIR}/tljh
export TLJH_INSTALL_PREFIX=${ZFS_DIR}/jupyter
sudo ln -s ${TLJH_INSTALL_PREFIX} /opt/tljh
SYS_MEM=$(grep MemTotal /proc/meminfo | awk '{print $2}')
SYS_CPU=$(grep -c ^processor /proc/cpuinfo)
JUPYTER_EXTERN_HTTP=15080
JUPYTER_EXTERN_HTTPS=15443
if [ $SYS_MEM -gt 2097152 ]
then
let "SYS_MEM = $SYS_MEM - 1048576"
else
let "SYS_MEM = $SYS_MEM / 2"
fi
if [ $SYS_CPU -gt 1 ]
then
let "SYS_CPU = $SYS_CPU - 1"
fi
cat << EOT >> /tmp/requirements.txt
numpy
scipy
matplotlib
pandas
tensorflow
tensorrt
pytorch
torchvision
torchaudio
EOT
sudo apt install python3 python3-dev git curl
curl -L https://tljh.jupyter.org/bootstrap.py | \
sudo -E python3 - \
--show-progress-page \
--admin ${ADMIN_ACCOUNT}:systemPassword \
--user-requirements-txt-url /tmp/requirements.txt
## Edit Jupyter Environment
sudo tljh-config set http.port ${JUPYTER_EXTERN_HTTP}
sudo tljh-config set https.port ${JUPYTER_EXTERN_HTTPS}
sudo tljh-config set limits.memory ${SYS_MEM}K
sudo tljh-config set limits.cpu ${SYS_CPU}
# sudo tljh-config set user_environment.default_app jupyterlab
sudo tljh-config reload proxy
sudo tljh-config reload