|
#!/bin/bash |
|
JUPYTER_TOKEN="${JUPYTER_TOKEN:=huggingface}" |
|
NOTEBOOK_DIR="/data" |
|
|
|
|
|
if [ -n "$NOTEBOOK_URL" ]; then |
|
|
|
FILENAME=$(basename "$NOTEBOOK_URL") |
|
|
|
|
|
if [[ "$NOTEBOOK_URL" == *"github.com"* && "$NOTEBOOK_URL" != *"raw.githubusercontent.com"* ]]; then |
|
|
|
RAW_URL=$(echo "$NOTEBOOK_URL" | sed 's|github.com|raw.githubusercontent.com|' | sed 's|/blob/|/|') |
|
wget -O "$NOTEBOOK_DIR/$FILENAME" "$RAW_URL" |
|
else |
|
wget -O "$NOTEBOOK_DIR/$FILENAME" "$NOTEBOOK_URL" |
|
fi |
|
|
|
echo "Downloaded notebook: $FILENAME" |
|
else |
|
echo "No NOTEBOOK_URL provided. Using existing notebooks in the repository." |
|
fi |
|
|
|
jupyter labextension disable "@jupyterlab/apputils-extension:announcements" |
|
|
|
jupyter-lab \ |
|
--ip 0.0.0.0 \ |
|
--port 7860 \ |
|
--no-browser \ |
|
--allow-root \ |
|
--ServerApp.token="$JUPYTER_TOKEN" \ |
|
--ServerApp.tornado_settings="{'headers': {'Content-Security-Policy': 'frame-ancestors *'}}" \ |
|
--ServerApp.cookie_options="{'SameSite': 'None', 'Secure': True}" \ |
|
--ServerApp.disable_check_xsrf=True \ |
|
--LabApp.news_url=None \ |
|
--LabApp.check_for_updates_class="jupyterlab.NeverCheckForUpdate" \ |
|
--notebook-dir=$NOTEBOOK_DIR |