{"action":"opened","issue":{"url":"https://api.github.com/repos/jupyterhub/dockerspawner/issues/127","repository_url":"https://api.github.com/repos/jupyterhub/dockerspawner","labels_url":"https://api.github.com/repos/jupyterhub/dockerspawner/issues/127/labels{/name}","comments_url":"https://api.github.com/repos/jupyterhub/dockerspawner/issues/127/comments","events_url":"https://api.github.com/repos/jupyterhub/dockerspawner/issues/127/events","html_url":"https://github.com/jupyterhub/dockerspawner/issues/127","id":188561300,"number":127,"title":"Default folder recreates with root owner","user":{"login":"egorlitvinenko","id":18114282,"avatar_url":"https://avatars.githubusercontent.com/u/18114282?v=3","gravatar_id":"","url":"https://api.github.com/users/egorlitvinenko","html_url":"https://github.com/egorlitvinenko","followers_url":"https://api.github.com/users/egorlitvinenko/followers","following_url":"https://api.github.com/users/egorlitvinenko/following{/other_user}","gists_url":"https://api.github.com/users/egorlitvinenko/gists{/gist_id}","starred_url":"https://api.github.com/users/egorlitvinenko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/egorlitvinenko/subscriptions","organizations_url":"https://api.github.com/users/egorlitvinenko/orgs","repos_url":"https://api.github.com/users/egorlitvinenko/repos","events_url":"https://api.github.com/users/egorlitvinenko/events{/privacy}","received_events_url":"https://api.github.com/users/egorlitvinenko/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-11-10T16:53:37Z","updated_at":"2016-11-10T16:53:37Z","closed_at":null,"body":"JupyterHub 0.6.1 is installing on Ubuntu 14.04, using DockerSpawner, custom Authenticator.\r\nAuthentication technic: Jupyter opens from another application with temporal code, LoginHandler get code from URL, connects to common application and check code, if success, user authorization is success.\r\n\r\njupyterhub_configuration.py:\r\n\r\n```\r\n# Configuration file for jupyterhub.\r\nc.JupyterHub.admin_access = True\r\nc.JupyterHub.authenticator_class = 'MyAuthenticator'\r\nc.JupyterHub.confirm_no_ssl = True # because JupyterHub under nginx frontend\r\n\r\nc.JupyterHub.spawner_class = 'dockerspawner.DockerSpawner'\r\nimport os\r\nnotebook_dir = os.environ.get('DOCKER_NOTEBOOK_DIR') or '/home/jovyan/work'\r\nc.DockerSpawner.notebook_dir = notebook_dir\r\nc.DockerSpawner.volumes = { '/home/me/volumes/{username}': notebook_dir }\r\nc.DockerSpawner.extra_host_config = {'network_mode': 'host'}\r\nc.DockerSpawner.http_timeout = 90\r\nc.DockerSpawner.debug = True\r\n\r\nfrom jupyter_client.localinterfaces import public_ips\r\nprint(public_ips())\r\nfirst_ip = public_ips()[0]\r\nc.JupyterHub.hub_ip = first_ip\r\nc.DockerSpawner.hub_ip_connect = first_ip\r\n\r\n```\r\n\r\nA problem is '/home/jovyan/work' folder belongs to root when new Spawner server created.\r\nIf I setting another folder, for example, '/notebooks', then '/notebooks' folder will be under root owner, but '/home/jovyan/work' will owned by jovyan. So it looks like folder automatically recreates by root user.\r\nAs a result I can't create any notebooks or files because insufficient privileges and result is 'permission denied' error."}}
{"actor":{"display_login":"egorlitvinenko"}}