Dash 1.3 is not worked is ShinyProxy

I have tried to run Dash dashboart on ShinyProxy/ I use https://github.com/openanalytics/shinyproxy-dash-demo - and it worked.
But I changed dash on new version and it broke.
It’s works:
RUN pip install dash==0.36.0 # The core dash backend
RUN pip install dash-renderer==0.17.0 # The dash front-end
RUN pip install dash-html-components==0.13.5 # HTML components
RUN pip install dash-core-components==0.43.0 # Supercharged components

It’s not works:
RUN pip install dash==1.3.0 # The core dash backend
RUN pip install dash-renderer==1.1.0 # The dash front-end
RUN pip install dash-html-components==1.0.1 # HTML components
RUN pip install dash-core-components==1.2.0 # Supercharged components

Message: Error loading layout

1 Like

Hi,

Thanks for posting this, this gave me the clue to solve my issue which is the same as yours. I managed to get it back online by using these version:

dash==1.1.1
dash-bootstrap-components==0.7.1
dash-core-components==1.1.1
dash-html-components==1.0.0
dash-renderer==1.0.0
dash-table==4.1.0

Hopefully this issue will be fixed.

1 Like

Is there an update on this issue?
I am running several plotly dash dashboards in shiny proxy and am not able to use any version higher than dash-renderer==1.0.0 without getting the error:
error loading layout
Is there a workaround available?

1 Like

Hi Shinyproxy Team,

is there something we can do for this?

Initially we needed only 2 additional settings (routes_pathname_prefix, requests_pathname_prefix). Is there something else needs to be configured to make it work? Or the compatibility between Shinyproxy and Plotly Dash is fundamentally broken?

The docker service logs are not too verbose, simply we get the “Error loading layout” message. Can you recommend a way to track it down to the root cause? How shinyproxy is calling the app.py from the other image? Where are the exact error messages presented?

After the last compatible version (1.1.1 ) this pull request was made: https://github.com/plotly/dash/pull/874 ( "this PR targets to clean the legacy dash-renderer assets present in git source repo. it closes #868
a new entry-point CLI tool is introduced as renderer , it has two jobs: npm and bundles". Was this maybe the point when the app behavior significantly changed?

Best Regards,
Imre

1 Like

Hi @imre, @horseshoe, @fdegier, @skar

ShinyProxy 2.5.0 provides the functionality and solves this issue. From the release notes:

  • provide the SHINYPROXY_PUBLIC_PATH environment variable to app containers in order to allow compatibility with Dash 1.3 and RStudio. See the documentation

Hope this helps!

Best,
Tobias

1 Like

@tverbebeke that’s perfect. Thanks a lot, it solved the issue!!
For all others, what I used now was taken from here:
shinyproxy-dash-demo

and looks like this:

app.config.update({
'routes_pathname_prefix': os.environ['SHINYPROXY_PUBLIC_PATH'],
'requests_pathname_prefix': os.environ['SHINYPROXY_PUBLIC_PATH']
})
2 Likes