How do I set parameters for each notebook on JuPyt

2019-08-18 00:43发布

I want to set some parameters as defined here(https://github.com/nteract/papermill#python-version-support). The catch is, I want to be able to do this via UI. I have a JHub installed on my cluster and while opening it, I want certain parameters to be set by default.

Also, when I pass the parameters via papermill(the above script gets saved somewhere and then I will run it via papermill), I want the latter to override the former.

I tried looking into several topics in pure JuPyter notebooks but in vain.

1条回答
该账号已被封号
2楼-- · 2019-08-18 01:16

For the user to access some parameters as soon as her notebook starts, ipython needs to know the startup cells. This can be done via the following commands in case of JuPyterHub:

proxy:
  secretToken: "yada yada"
singleuser:
  image:
    name: some_acc_id.dkr.ecr.ap-south-1.amazonaws.com/demo
    tag: 12h
  lifecycleHooks:
    postStart:
      exec:
        command: ["/bin/sh", "-c", 'ipython profile create; cd ~/.ipython/profile_default/startup; echo ''run_id = "sample" ''> aviral.py']
  imagePullSecret:
    enabled: true
    registry: some_acc_id.dkr.ecr.ap-south-1.amazonaws.com
    username: aws
    email: aviral@abc.com

Make sure you are escaping the quotes in the yaml correctly, or simply follow what I have done above.

Once this is done, papermill will override the params but for that, you have to make sure that the cell is tagged as "parameters". For instance, in my jupyterhub, every notebook that starts has run_id variable with the value "sample".

查看更多
登录 后发表回答