That should be:

docker run --detach --name appmodesrv --restart always -v
/srv/jupyterhub/home/prod:/tmp/working -w=/tmp/working -p 8888:8888 -it
mysingleuserserver jupyter notebook --no-browser --allow-root
--ip="0.0.0.0" --notebook-dir=/tmp/working
--NotebookApp.token=''"  --Appmode.show_edit_button=False





On Wed, Apr 17, 2019 at 12:50 PM Jonathan Larkin <
[email protected]> wrote:

> I have a similar problem to Alex (a small team, limited dev resources,
> limited experience in front end dev, etc. and about 10 users who consume
> the output). I note that Alex mentioned *JupyterHub*. I would imagine this
> is a very common problem. I am jealous of R/Shiny for this kind of workflow.
>
> I have just started using `appmode` and it is pretty nice. This is what I
> do:
>
> - In development, I use JupyterHub and DockerSpawner to spin up Jupyter
> singleuser servers (e.g., I develop on an image called mysingleuserserver).
> - When I want to release a notebook to prod, I just git pull it over on
> the JupyterHub server to /srv/jupyterhub/home/prod (a user named "prod").
> - For the end users: I don't want the user to need to interact with
> JupyterHub because then the user has to 1) log into JupyterHub, and 2)
> Spawn a server, and 3) then apply the `babeurl/apps/foo.ipynb` link in
> their browser. This is too clunky for a non-technical user. So for prod, I
> spin up a single user server (docker run --detach --name appmodesrv
> --restart always -v /srv/jupyterhub/home/prod:/tmp/working -w=/tmp/working
> -p 8888:8888 -it mysingleuserserver jupyter notebook --no-browser
> --allow-root --ip="0.0.0.0" --notebook-dir=/tmp/working
> --NotebookApp.token=''"). Then the users just point to
> mydomain:8888:/app/MyApp1.ipynb. All good!
>
>
>
>
> On Wed, Apr 17, 2019 at 11:05 AM Chris Holdgraf <[email protected]>
> wrote:
>
>> Check out Voila! ( https://github.com/QuantStack/voila)  I bet that
>> you'd find it interesting - it's quite similar to app mode :-)
>>
>> On Wed, Apr 17, 2019 at 6:54 AM Alexander Feiszli <[email protected]>
>> wrote:
>>
>>> Hello,
>>>
>>> At my org we are looking to implement Jupyter notebooks in production as
>>> sort of "mini-apps" for small groups of end users. The idea is that the
>>> data scientists can develop in Jupyterhub like an IDE and then push a
>>> notebook into a CICD workflow, and then out pops a production version that
>>> is accessible by a particular group of users. The reason for this is that
>>> the data scientists are not app developers, they do not want to write
>>> webapps, just work on their algorithms, and their end users are very small
>>> groups, maybe 6-12 internal users, so it is unnecessary to have a
>>> development team devoted to making nice looking apps for every algorithm
>>> they write. We just need a mechanism by which the end user can provide
>>> input data, it gets transformed by the notebook, generates some
>>> charts/graphs, and then they receive transformed output data.
>>>
>>> For the end users, they should not be able to modify or create new
>>> notebooks, simply run a single notebook. For that reason we are looking at
>>> the "appmode" plugin (https://github.com/oschuett/appmode). The next
>>> thing we would like to do is have the production URL redirect to the
>>> running "appmode" version of the notebook. In addition, the production
>>> notebook server should basically just have all the other endpoints shut off
>>> or restricted, so that only this single "appmode" page is accessible.
>>>
>>> Can someone point me in the right direction for how I could modify a
>>> notebook server to have requests to the base url redirect to this appmode
>>> page, and how to restrict or turn off the other endpoints? I am a bit lost
>>> but guessing I will need to modify the handlers here:
>>> https://github.com/jupyter/notebook/blob/master/notebook/notebook/handlers.py
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Project Jupyter" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/jupyter/d290d0dd-151e-4af0-a59c-e3cd38f78ccf%40googlegroups.com
>>> <https://groups.google.com/d/msgid/jupyter/d290d0dd-151e-4af0-a59c-e3cd38f78ccf%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Project Jupyter" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jupyter/CAD7kTDF4VSFOZMbip6oizN4FUiNyg9AbMq_o1SiNfDWTXqeCdg%40mail.gmail.com
>> <https://groups.google.com/d/msgid/jupyter/CAD7kTDF4VSFOZMbip6oizN4FUiNyg9AbMq_o1SiNfDWTXqeCdg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Project Jupyter" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/CAG57zoWrY7-%2BMH16eO%2BXb2abcxFbty7fizNy7Q7W9SpsHXDzvg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to