Compare commits
2 Commits
f06f00188c
...
2161ca9805
Author | SHA1 | Date |
---|---|---|
Mark | 2161ca9805 | |
Mark | e62e2c2919 |
|
@ -0,0 +1,2 @@
|
|||
jupyter/jupyter
|
||||
jupyter/notebooks
|
|
@ -31,9 +31,6 @@ To build this image, run `build/build.fish.` Edit the script to customize the im
|
|||
|
||||
|
||||
## TODO
|
||||
- Port config
|
||||
- User config
|
||||
- Volume permissions
|
||||
- Auto dark theme
|
||||
- Fix sage
|
||||
- Selenium (broken)
|
||||
|
|
|
@ -156,7 +156,6 @@ RUN set -x && \
|
|||
cut -d " " -f 1,2 \
|
||||
>> "${CONDA_DIR}/conda-meta/pinned" \
|
||||
&& \
|
||||
jupyter notebook --generate-config && \
|
||||
mamba clean --all -f -y && \
|
||||
npm cache clean --force && \
|
||||
jupyter lab clean && \
|
||||
|
@ -177,13 +176,16 @@ COPY jupyter_server_config.py /etc/jupyter/
|
|||
COPY --chown=${NB_UID}:${NB_GID} Rprofile.site /opt/conda/lib/R/etc/
|
||||
|
||||
USER root
|
||||
#COPY overrides.json /opt/conda/share/jupyter/lab/settings/
|
||||
|
||||
RUN mkdir "${HOME}/notebooks" && \
|
||||
chown "${NB_UID}:${NB_GID}" "${HOME}/notebooks" &&\
|
||||
chmod u+rwx "${HOME}/notebooks"
|
||||
VOLUME "${HOME}/notebooks"
|
||||
|
||||
RUN mkdir -p "${HOME}/.jupyter" && \
|
||||
chown "${NB_UID}:${NB_GID}" "${HOME}/.jupyter" &&\
|
||||
chmod u+rwx "${HOME}/.jupyter"
|
||||
VOLUME "${HOME}/.jupyter"
|
||||
|
||||
# Legacy for Jupyter Notebook Server, see: [#1205](https://github.com/jupyter/docker-stacks/issues/1205)
|
||||
#RUN sed -re "s/c.ServerApp/c.NotebookApp/g" \
|
||||
|
|
|
@ -8,7 +8,7 @@ c = get_config() # noqa: F821
|
|||
c.ServerApp.ip = "0.0.0.0"
|
||||
c.ServerApp.port = 8888
|
||||
c.ServerApp.open_browser = False
|
||||
c.ServerApp.root_dir = "/home/joyvan/notebooks"
|
||||
c.ServerApp.root_dir = "/home/jovyan/notebooks"
|
||||
|
||||
# to output both image/svg+xml and application/pdf plot formats in the notebook file
|
||||
c.InlineBackend.figure_formats = {"png", "jpeg", "svg", "pdf"}
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"@jupyterlab/apputils-extension:themes": {
|
||||
"theme": "JupyterLab Dark"
|
||||
}
|
||||
}
|
|
@ -4,10 +4,6 @@
|
|||
|
||||
set -e
|
||||
|
||||
# The Jupyter command to launch
|
||||
# JupyterLab by default
|
||||
DOCKER_STACKS_JUPYTER_CMD="${DOCKER_STACKS_JUPYTER_CMD:=lab}"
|
||||
|
||||
if [[ -n "${JUPYTERHUB_API_TOKEN}" ]]; then
|
||||
echo "WARNING: using start-singleuser.sh instead of start-notebook.sh to start a server associated with JupyterHub."
|
||||
exec /usr/local/bin/start-singleuser.sh "$@"
|
||||
|
@ -18,4 +14,8 @@ if [[ "${RESTARTABLE}" == "yes" ]]; then
|
|||
wrapper=""
|
||||
fi
|
||||
|
||||
exec /usr/local/bin/start.sh ${wrapper} jupyter ${DOCKER_STACKS_JUPYTER_CMD} ${NOTEBOOK_ARGS} "$@"
|
||||
if [ ! -f /home/${NB_USER}/.jupyter/jupyter_notebook_config.py ]; then
|
||||
jupyter notebook --generate-config
|
||||
fi
|
||||
|
||||
exec /usr/local/bin/start.sh ${wrapper} jupyter lab ${NOTEBOOK_ARGS} "$@"
|
||||
|
|
|
@ -26,6 +26,7 @@ function build_image
|
|||
-t betalupi/jupyter-inter-(math $img_idx + 1)
|
||||
|
||||
|
||||
date "+Finished at %Y-%m-%d %T"
|
||||
if $remove_previous
|
||||
printf "Done, cleaning up.\n\n"
|
||||
sleep 1
|
||||
|
@ -37,7 +38,8 @@ function build_image
|
|||
set img_idx (math $img_idx + 1)
|
||||
end
|
||||
|
||||
|
||||
date "+Build started at %Y-%m-%d %T"
|
||||
echo ""
|
||||
|
||||
# Base image MUST be built first
|
||||
printf "Building base image...\n"
|
||||
|
@ -48,15 +50,17 @@ docker build \
|
|||
printf "Done. \n\n"
|
||||
|
||||
|
||||
|
||||
|
||||
build_image false octave
|
||||
build_image false r
|
||||
build_image false sage
|
||||
#build_image false sage (BROKEN)
|
||||
#build_image false selenium (BROKEN)
|
||||
|
||||
build_image false plugins
|
||||
build_image pymodules
|
||||
build_image false pymodules
|
||||
|
||||
# Rename final image
|
||||
docker image tag betalupi/jupyter-inter-(math $img_idx) betalupi/jupyter
|
||||
docker image tag betalupi/jupyter-inter-(math $img_idx) git.betalupi.com/mark/jupyter
|
||||
docker image rm betalupi/jupyter-inter-(math $img_idx)
|
||||
|
||||
echo ""
|
||||
date "+Build finished at %Y-%m-%d %T"
|
|
@ -0,0 +1,27 @@
|
|||
ARG BASE_CONTAINER=betalupi/jupyter-base
|
||||
FROM $BASE_CONTAINER
|
||||
LABEL maintainer="Mark <mark@betalupi.com>"
|
||||
|
||||
USER ${NB_UID}
|
||||
|
||||
RUN mamba install --yes \
|
||||
"selenium" \
|
||||
&& \
|
||||
# Cleanup
|
||||
mamba clean --all -f -y && \
|
||||
npm cache clean --force && \
|
||||
jupyter lab clean && \
|
||||
rm -rf "/home/${NB_USER}/.cache/yarn" && \
|
||||
fix-permissions "${CONDA_DIR}" && \
|
||||
fix-permissions "/home/${NB_USER}"
|
||||
|
||||
# Install google chrome
|
||||
RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
|
||||
RUN sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/pt/#sources.list.d/google-chrome.list'
|
||||
RUN apt-get -y update
|
||||
RUN apt-get install -y google-chrome-stable
|
||||
|
||||
# Install chromedriver
|
||||
RUN apt-get install -yqq unzip
|
||||
RUN wget -O /tmp/chromedriver.zip http://chromedriver.storage.googleapis.com/`curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE`/chromedriver_linux64.zip
|
||||
RUN unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/
|
|
@ -7,7 +7,8 @@ services:
|
|||
restart: unless-stopped
|
||||
|
||||
volumes:
|
||||
- "./notebooks:/home/joyvan/notebooks"
|
||||
- "./notebooks:/home/jovyan/notebooks"
|
||||
- "./jupyter:/home/jovyan/.jupyter"
|
||||
|
||||
# host:container
|
||||
ports:
|
||||
|
|
Loading…
Reference in New Issue