first-llm-classifier / start_server.sh
fdaudens's picture
fdaudens HF Staff
Update start_server.sh
80bfbf4 verified
raw
history blame
1.97 kB
#!/bin/bash
JUPYTER_TOKEN="${JUPYTER_TOKEN:=huggingface}"
# Define directories
NOTEBOOK_DIR="/data"
ORIGINAL_NOTEBOOKS="/home/user/app/notebooks" # This is the correct path where notebooks are located
echo "Starting notebook setup process..."
echo "Looking for notebooks in: $ORIGINAL_NOTEBOOKS"
# List all notebook files in the source directory
find "$ORIGINAL_NOTEBOOKS" -name "*.ipynb" -type f 2>/dev/null || echo "Cannot find notebooks in $ORIGINAL_NOTEBOOKS"
# Check if we can find the notebooks
if ls "$ORIGINAL_NOTEBOOKS"/*.ipynb 1> /dev/null 2>&1; then
echo "Found notebooks in $ORIGINAL_NOTEBOOKS"
# Clear the notebook directory and copy fresh notebooks for this session
echo "Preparing fresh notebooks for this session..."
mkdir -p "$NOTEBOOK_DIR"
rm -f "$NOTEBOOK_DIR"/*.ipynb
# Copy notebooks to data directory
cp -v "$ORIGINAL_NOTEBOOKS"/*.ipynb "$NOTEBOOK_DIR/" || echo "Failed to copy notebooks"
# Set proper permissions
chmod -R 755 "$NOTEBOOK_DIR"
chown -R $(whoami) "$NOTEBOOK_DIR" 2>/dev/null || echo "Could not change ownership"
else
echo "No notebooks found in expected location. Checking all directories..."
find / -name "*.ipynb" -not -path "*/\.*" 2>/dev/null | head -20
fi
# Show what we've got
echo "Contents of notebook directory ($NOTEBOOK_DIR):"
ls -la "$NOTEBOOK_DIR"
# Start JupyterLab
echo "Starting JupyterLab..."
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