我最近在我们的大学服务器上设置了 JupyterLab,现在将允许其他用户访问该中心。是否可以由用户配置默认的 Jupyter 应用程序(notebook、lab、voila 等)?
在 /etc/jupyter/ 中的 jupyterhub_config.py 中,只有一个全局选项,默认使用哪个 URL:
c.Spawner.default_url = '/lab'
如何区分用户的行为?是否可以只允许某些用户使用lab和notebook并限制其他用户使用voila?
JupyterHub 的一位维护者在这里给出了答案。我将复制/粘贴最终答案,以防链接失效
def default_url(handler):
user = handler.current_user
if not user:
# not logged in, send to login, no ?next
# that way, default_url will be called again after successful login
return handler.get_login_url()
if "admin-ui" in handler.expanded_scopes:
# has permission to view the admin page, send there
return handler.base_url + "hub/admin"
else:
# regular user, send to spawn page
# (which redirects to running user if it's running)
# this is the default default URL
return handler.base_url + "hub/spawn"
c.JupyterHub.default_url = default_url