diff --git a/minimal-notebook/Dockerfile b/minimal-notebook/Dockerfile index 6048df20..5a3b6359 100644 --- a/minimal-notebook/Dockerfile +++ b/minimal-notebook/Dockerfile @@ -20,6 +20,7 @@ RUN apt-get update && apt-get install -yq --no-install-recommends \ texlive-latex-extra \ texlive-fonts-extra \ texlive-fonts-recommended \ + supervisor \ sudo \ && apt-get clean @@ -53,4 +54,5 @@ CMD [ "start-notebook.sh" ] # Add local files as late as possible to avoid cache busting COPY start-notebook.sh /usr/local/bin/ +COPY notebook.conf /etc/supervisor/conf.d/ COPY jupyter_notebook_config.py /etc/skel/.jupyter/ diff --git a/minimal-notebook/notebook.conf b/minimal-notebook/notebook.conf new file mode 100644 index 00000000..353c0b05 --- /dev/null +++ b/minimal-notebook/notebook.conf @@ -0,0 +1,10 @@ +[program:notebook] +user=jovyan +umask=0002 +directory=%(ENV_WORK)s +command=ipython notebook +autostart=true +autorestart=true +stdout_logfile=/var/log/supervisor/%(program_name)s.log +redirect_stderr=true +environment=HOME="/home/%(ENV_NB_USER)s",USER="%(ENV_NB_USER)s" diff --git a/minimal-notebook/start-notebook.sh b/minimal-notebook/start-notebook.sh index 757e1d06..2c5e5798 100755 --- a/minimal-notebook/start-notebook.sh +++ b/minimal-notebook/start-notebook.sh @@ -12,8 +12,5 @@ if [ ! -z "$GRANT_SUDO" ]; then echo "$NB_USER ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/notebook fi -# Run Notebook server as $NB_USER -su -l $NB_USER << EOF -cd $WORK -jupyter notebook -EOF +# Start supervisord in foreground, PID1 +exec supervisord -n -c /etc/supervisor/supervisord.conf