jupyterhub / wrapspawner

Mechanism for runtime configuration of spawners for JupyterHub
BSD 3-Clause "New" or "Revised" License
60 stars 57 forks source link

JupyterHub Docker Spawner Error : ValueError: oauth_client_id cannot be empty. #23

Open zmkhazi opened 5 years ago

zmkhazi commented 5 years ago

I have Jupterhub 0.7.2 with dockerspawner 0.7.0 on Linux VM. This is 4 node docker swarm cluster. I have been using LDAP Auth, but no Oauth.

I have created a new docker image with Jupterhub 0.9.4. Upon running this new container from the VM that has Jupterhub_config.py with Jupyterhub 0.7.2, I am getting the following error.

File "/usr/local/lib/python3.5/dist-packages/jupyterhub/services/auth.py", line 484, in _ensure_not_empty raise ValueError("%s cannot be empty." % proposal.trait.name) ValueError: oauth_client_id cannot be empty.

Below is the configuration of Jupterhub_config.py

[root@jupyterhub]# cat jupyterhub_config.py from tornado import gen import os os.environ["DOCKER_HOST"] = ":4001" c.DockerSpawner.use_docker_client_env = True

c.JupyterHub.hub_port = 8081 c.JupyterHub.ip = '10.126.207.52' c.JupyterHub.port = 443 c.JupyterHub.proxy_api_ip = '0.0.0.0' c.JupyterHub.hub_ip = '10.126.207.52'

c.Authenticator.admin_users = {'devdocadm'}

c.Spawner.default_url = '/user/{username}'

c.ConfigurableHTTPProxy.command = ['configurable-http-proxy', '--ssl-protocol', 'TLSv1_2'] c.JupyterHub.proxy_cmd = ['configurable-http-proxy', '--ssl-protocol=TLSv1_2']

c.JupyterHub.ssl_cert = '/jupyter01/cert/dev-hub-ssl/jupyterhub-dev01.myco.com.chain.pem' c.JupyterHub.ssl_key = '/jupyter01/cert/dev-hub-ssl/jupyterhub-dev01.myco.com.key'

c.JupyterHub.cookie_secret_file = '/jupyter01/config/jupyterhub/jupyterhub_cookie_secret'

c.JupyterHub.spawner_class = 'dockerspawner.SystemUserSpawner'

c.DockerSpawner.container_image = 'jupyterhub:5000/jhubatf:1'

c.DockerSpawner.read_only_volumes = { '/data01/shared/' : '/home/{username}/shared' } c.DockerSpawner.volumes = { '/data01/jupyterhub/custom' : '/opt/conda/lib/python3.5/site-packages/notebook/static/custom', '/data/{username}' : '/home/{username}/', '/data01/shared/{username}' : '/home/{username}/myshare', } c.SystemUserSpawner.host_homedir_format_string = '/data/{username}' c.Spawner.ip = '10.126.207.52' c.Spawner.args = ['--JupyterApp.config_file=/etc/jupyter/jupyter_notebook_config.py'] c.DockerSpawner.container_ip = "0.0.0.0" c.DockerSpawner.hub_ip_connect = '10.126.207.52' c.DockerSpawner.remove_containers = True

c.JupyterHub.authenticator_class = 'ldapauthenticator.LDAPAuthenticator' c.LDAPAuthenticator.server_address = 'ad-nam.myco.com' c.LDAPAuthenticator.bind_dn_template = 'nam{username}' c.LDAPAuthenticator.server_port = 636 c.LDAPAuthenticator.lookup_dn = True c.LDAPAuthenticator.user_attribute = 'sAMAccountName' c.LDAPAuthenticator.use_ssl = True

c.JupyterHub.tornado_settings = { 'headers': { 'Content-Security-Policy': "frame-ancestors * 'self'" } }