# JupyterLab Configuration # Deployed via Ansible - Do not edit manually # Red Panda Approved # ============================================================================= # Server Settings # ============================================================================= # Allow connections from reverse proxy c.ServerApp.allow_remote_access = True c.ServerApp.local_hostnames = ['localhost', '127.0.0.1', 'jupyter.{{ jupyterlab_domain }}'] # Disable browser launch c.ServerApp.open_browser = False # Disable token authentication (OAuth2-Proxy handles auth) c.ServerApp.token = '' c.ServerApp.password = '' # Base URL for reverse proxy c.ServerApp.base_url = '/' # Trust X-Forwarded headers from OAuth2-Proxy c.ServerApp.trust_xheaders = True # ============================================================================= # WebSocket Configuration (for reverse proxy) # ============================================================================= # Allow WebSocket connections from any origin (handled by OAuth2-Proxy) c.ServerApp.allow_origin = '*' c.ServerApp.allow_credentials = True # Disable XSRF for API (OAuth2-Proxy handles CSRF) c.ServerApp.disable_check_xsrf = True # ============================================================================= # Notebook Settings # ============================================================================= # Default notebook directory c.ServerApp.root_dir = '{{ jupyterlab_notebook_dir }}' # Allow hidden files c.ContentsManager.allow_hidden = True # ============================================================================= # Terminal Settings # ============================================================================= # Enable terminal c.ServerApp.terminals_enabled = True # ============================================================================= # Logging # ============================================================================= # Log level c.Application.log_level = 'INFO' # Log format c.Application.log_format = '[%(levelname)s %(asctime)s %(name)s] %(message)s'