Jupyter Hub on secure server with Legacy Python


I’ve been reading over the information on JupyterHub and our team would love to deploy it. I’m trying to understand if it would be a viable option we could deploy without having our vendor integrate it into their product. Our team writes reports that drive a web portal end users log into to view as a Community Health Record and analytic reporting on population, patient data for our clients. The portal is provided by a vendor. All access to the environment is via web browsers. I’ve been poking through the environment and it all ‘seems’ python driven.

Our biggest barrier is trying to get our vendor to include a better tool to write Python Reports that is connected to our database. We have to code reports in a single file and then figure out errors or if it is pulling back the data we need. The tool inside the environment they supply is a single window to write Python code, no cells/blocks, just an error tab. You click ‘run’ and wait for the results. This defeats one of the strengths of using Python.

HIPAA compliant server behind firewalls
Python environment is Python 3.4.7 with custom packages (the vendor controls this)
We can log in using API authentication

Current Process:
We code reports outside of the environment, paste into the environment, click run, and see if it works.
We use GitHub to track versioning.
This is horribly time-consuming for troubleshooting and development. It would be awesome to use Jupyter Lab and push/pull report code from GitHub!

We do have access to the base level of our server, we own the hardware. I’m wondering how/if JupyterHub can use the Kernal deployed by our Vendor and how we could deploy it. They are not very forthcoming with providing a copy and have a specific database to report from. The database is non-SQL with tons of indexing.

I’ve read over the install guides and it appears easy to do for a cloud server or a server that isn’t as locked down like ours.

Any resources to help figure this out would be great!

3.4 can be a blocker, many things need 3.5+. An image of your top-level architecture would help, e.g. it’s unclear if you can access the data “from the outside”.

I’d consider building up a Jupyter data pipeline outside of the portal, and just feed the results into it (via small requests stubs).

Thanks for the idea.

I can’t provide an image of the architecture because of being a HIPAA compliant system.

We can create secure ports for us to use for business purposes. I figured it would be tricky with the version our vendor uses.

An example is we use a Jupyter notebook to map users and access the user logs to provide a human readable log report of activities. We pull out the user list, then hit the API with the user list against the logs to create a report of user activity.

I’m thinking at this point we’ll have to push on our vendor to integrate Jupyter into the environment. There’s a user group meeting coming up so I’m thinking we’ll just start a riot to get them to integrate it! lol