shinyproxy | Open Source Enterprise Deployment for Shiny and data | Data Visualization library
kandi X-RAY | shinyproxy Summary
kandi X-RAY | shinyproxy Summary
Open Source Enterprise Deployment for Shiny Apps. Learn more at
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Start an existing app
- Parses an AppRequestInfo from a string
- Gets or starts a user proxy
- Validates whether a proxy should start
- Display the server transfer page
- Resolves an image URI
- Set the value of the Spring web application
- Sends a request to the given application
- Waits until the proxy is ready
- Posts an issue to the server
- Sends the support mail
- Handle shinyproxy authentication
- Checks if an exception is not authenticated
- Gets a json string for the given request
- Returns the app title for the given app request
- Initialize the proxy
- Display the templates
- Merges the base spec and returns the result
- Performs a heartbeat
- Apply permissions to the HttpSecurityPolicy
- Checks if the shiny proxy is valid or not
- Display the admin page
shinyproxy Key Features
shinyproxy Examples and Code Snippets
Community Discussions
Trending Discussions on shinyproxy
QUESTION
For various reasons I want to be able to use a proxied data table and replaceData while client side processing is being used i.e. DT::renderDataTable(..., server = FALSE)
.
I have a shiny application/dashboard that communicates to a database and presents information to a user. The user is able to fill out a form in the application which will be added to the database and then the shiny app updates the data by making a query to the database to fetch the new information.
The application is currently being deployed via kubernetes using a LoadBalancer
with the intention to use multiple replicas to scale up the application as needed. The application is not being run through shinyproxy.
Currently, when the application is being run by a single replica (process) the application will behave perfectly fine and is able to use server=TRUE
. However when I increase the number of processes/replicas to run, the data is not able to be presented to users unless server=FALSE
is specified in renderDataTable
. For a currently unknown reason but I suspect it might be due to the sessions not being sticky to IPs
While the code is able to function fine when server = TRUE
if I want to allow multiple users to application they all cannot share a single process as the application will become very slow once multiple connections are made. As a result I likely need to use server=FALSE
so each user is able to see the data at the cost of a very important functional detail (replaceData
stops working). The product owner of the application is insistent that this behaviour remains intact as the data present is often large and requires some column sorting and paging to find a piece of information you want to look at. And when submitting a form, if I do not use replaceData
and reconstruct the table from scratch the users previous table state is lost.
So while I could tear down the datatable and regenerate it within an observeEvent
ANSWER
Answered 2021-Dec-03 at 02:56We can try to use reactiveValues
combined with the information of input$table_rows_selected
. The server
argument is equal to FALSE
as requested.
QUESTION
I'm struggling with character encoding with my ShinyApp. I'm using ShinyProxy for deploying the apps.
I read my data as JSON encoded in UTF-8 with:
...ANSWER
Answered 2021-Oct-08 at 15:27I solved it. Turns out that België in not "UTF-8" but it's "latin1". So it is sufficient to encode it as "latin1".
QUESTION
I'm using ShinyProxy to deploy R ShinyApps.
I plot on a Leaflet Map marker point and cluster them because I have more than one (actually a lot) points for the same coordinates.
Each point can be in two state, so I change the color in Red or Green.
I'd like to change the color of the "cluster marker" too in:
- red if at least one marker inside of it is red
- green otherwise
Here a (simple dummy) photo to better explain what I mean:
I searched a lot but I cannot find a solution to my problem.
Here a portion of my code:
...ANSWER
Answered 2021-Sep-06 at 13:50Some ideas:
including feature:
https://stackoverflow.com/questions/53245984/leaflet-r-how-to-make-appearance-of-clustered-icon-related-to-statistics-of-the
change color of clusters:
https://stackoverflow.com/questions/33634901/leaflet-for-r-how-to-change-default-css-cluster-classes
idea is to see if cluster has any red point/marker in it, if it has then color should be red otherwise green.
QUESTION
I am using Shinyproxy with Keycloak and read the username with
userName <- Sys.getenv("SHINYPROXY_USERNAME")
Unfortunately I receive a concatenation of FirstName and LastName, which is not unique.
I would like to have the username in SHINYPROXY_USERNAME. Is this a Keycloak configuration issue?
...ANSWER
Answered 2021-Jan-30 at 18:43QUESTION
Everytime I restart my ec2 server I have to do:
sudo systemctl start docker
and then docker-compose up -d
to launch all my containers.
Would there be a way to automatically run these two commands at the start of the instance?
I have read this answer and I think ideally I would like to know how to do that:
Create a systemd service and enable it. All the enabled systems services will be started on powering.
Do you know how to create such systemd service?
[EDIT 1]: Following Chris William's comment, here is what I have done:
Thanks Chris, so I created a docker_boot.service with the following content:
...ANSWER
Answered 2020-Aug-08 at 16:40To have a service launch at launch you would run the following command sudo systemctl enable docker
.
For having it then launch your docker compose up -d
command you'd need to create a new service for your specific action, and then enable it with the contents similar to the below.
QUESTION
I am following the instructions in order to secure shinyproxy as per https://shinyproxy.io/security/. Is it possible to run shinyproxy in a container and bind to 127.0.0.1 so that my nginx reverse proxy can forward the request via proxy_pass
to 127.0.0.1:8080
?
So something like sudo docker run -d -p 127.0.0.1:8080:8080 --net sp-example-net -v /var/run/docker.sock:/var/run/docker.sock shinyproxy_base:localhost
where bind-address: 127.0.0.1
in application.yml.
This works if i remove bind-address:127.0.0.1
and change -p 8080:8080
so that shinyproxy is listening on 0.0.0.0
but that is not suggested.
Is the above possible or should I keep the docker container listening on 0.0.0.0?
...ANSWER
Answered 2020-Aug-14 at 20:19If a process is set with a bind address of 127.0.0.1, it will be unreachable from outside of its own container (it binds to a container-private localhost interface). Since a container usually only runs one process, this makes the process unreachable.
Setting containerized processes to listen on 0.0.0.0 ("all interfaces") is usually safe. They can be reached from other containers on the same Docker network, but they can't be reached from outside Docker unless you publish that port with a docker run -p
option.
For what you're describing, it's reasonable to set the proxy to bind-address: 0.0.0.0
, and then limit where it's published using the docker run -p 127.0.0.1:8080:8080
option. Here the address in -p
is the address of one of the host's interfaces.
QUESTION
I wrote a shiny web application and deploy it on a server using ShinyProxy. Accessing the app directly via the IP address and port 8080 works fine. However, I need to connect it to a URL. On the ShinyProxy website there is an explanation on how it works with Nginx:
...ANSWER
Answered 2020-Aug-09 at 17:00If you have a unique URL for the websocket endpoint, just load mod_proxy_wstunnel and target that traffic first. In the example below /Silly/ws is the websocket endpoint:
QUESTION
I successfully deployed an application with shiny
and shinyproxy
.
The purpose of the app is to manually review an algorithm decision
We want to store not only the decision but also the timestamp in which the decision is made, so inside the code we are making use of Sys.time()
.
Our current time zone is UTC+2 while inside the app when deployed with shinyproxy it seems that Sys.time
will give us UTC time ( so 2 hours behind what we'd like to see).
I checked the server date and it's ok.
Is there some configuration we can modify on shinyproxy to deal with this situation? Or it's easier to work on some parameters of Sys.time()
or another R function, i suppose specifying something like timezone="Europe/Amsterdam"
?
Thanks
...ANSWER
Answered 2020-Jul-03 at 10:52Something like:
QUESTION
I'm looking at setting up a Shiny app that uses the Furrr package behind the scenes for some multithreaded operations. While checking the documentation for Shiny Server I read that the Open Source version is limited to a single process.
Does this mean anything running on Shiny Server Open Source can't be used in conjunction with any of the multithreading packages, since afaik all multithreading in R requires creating multiple processes? Also would this apply as well to something like ShinyProxy?
...ANSWER
Answered 2020-Jun-17 at 09:13Per Jcheng on github:
Shiny Server will launch up to one R process for each app to run Shiny, then those R processes can launch child processes if they want.
So the answer is yes shiny server open source is capable of multithreading, it simply wont automatically create new R processes to serve concurrent users' sessions (ie automatic load balancing).
QUESTION
I am trying to deploy my R application using ShinyProxy and docker. As soon as run the command, java -jar I get a nested exception in docker terminal stating Illegal argument exception. I am attaching the last traceback error. I referred https://www.databentobox.com/2019/11/05/deploy-r-app-with-shinyproxy/ tutorial for deploying R application. Any suggestion on how to overcome this error?
...ANSWER
Answered 2020-Mar-27 at 16:35It worked for me by degrading shinyproxy version to 2.0.0 from 2.3.0.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install shinyproxy
You can use shinyproxy like any standard Java library. Please include the the jar files in your classpath. You can also use any IDE and you can run and debug the shinyproxy component as you would do with any other Java program. Best practice is to use a build tool that supports dependency management such as Maven or Gradle. For Maven installation, please refer maven.apache.org. For Gradle installation, please refer gradle.org .
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page