Share docker session across multiple users


#1

Hi,
I would like to know if it’s possible to share a docker session running an application, by one user to another user, so the new user can see exactly the same actions path that the first user made. It’s like saving the work that first user made in the application to let the next user continue the work of the first.
A clarified example:
User named A, upload a file in her application and made some actions to this file.
So now we want to send the session of user A (with all the actions path that he took) to the user B to be able to continue the work.
I’ve seen the “volume docker thing” that allows persistent data but i don’t know if this can handle my issue.
Thanks


#2

Hi,
Could you please elaborate on how would you do that in pure shiny? I think there can be several approaches, for example using databases or persistent file storage. Both of these are possible in shinyproxy, using docker-volumes or docker-network (see a potentially relevant discussion in Using ShinyProxy with multi-container app).


#3

Hi,
I have the shinyproxy as an interface where a user can click my application made in RShiny (lets you upload a file and make changes to it) and when they run it, the docker becomes executed in a specific port handled by shinyproxy, So I want to know if there is a way to share this docker session executed by the user to another user.
I’ve found a possible way to do this but I’m not sure if it will work. The idea is to make a backup of the current docker that we want to share, and then run the backup into a new docker session for another user. I extracted the information from this site: https://bobcares.com/blog/docker-backup/
Thanks for reply


#4

You probably don’t need to backup the whole docker container, but only the relevant data/changes from shiny. This can be done with files or other means, see e.g. https://shiny.rstudio.com/articles/persistent-data-storage.html. To use filesystem of the server shinyproxy runs on, you can use docker-volumes parameter in the configuration.


#5

Thank mnazarov for answering. I think this is the solution that i was looking for really appreciate it. I will tell you how it’s going on.