Scaling up app using container-cpu-limit

I have one shiny app that I need to scale up. It runs a 2 minute simulation, and the website becomes inaccessible to other users while it runs the simulation. I was hoping shinyproxy could remedy this.

The issue is that I want this app to operate as a website that anyone can visit. As such, my authentication is set to none. Thus, only one container is opening each time someone visits the website since shinyproxy thinks there is only one user (I think), which makes the app run very slowly. For example, if two users try to run a simulation at the same time, it takes 12 minutes for both.

My question is: how can I scale this up within shinyproxy? It seems like container-memory-request , container-memory-limit and container-cpu-limit might be the answer, but I’ve modified my yml and it is still takes 12 minutes for both users.

Am I using this incorrectly? Or, is this something that can’t be done in shinyproxy (and if so, should I use something else like docker swarm instead)?

This is my yml:

  title: Dynamic Fit
  port: 8080
  landing-page: /app/updates
  authentication: none
  container-backend: docker
  docker:
    url: http://localhost:2375
    container-memory-request: 200M
    container-memory-limit: 500M
    container-cpu-limit: .1
  hide-navbar: true
  specs:
  - id: updates
    display-name: Dynamic Fit
    container-cmd: ["R", "-e", "rmarkdown::run('/srv/shiny-server/app/Updates.Rmd', shiny_args = list(port = 3838, host = '0.0.0.0'))"]
    container-image: myappb
    port: 3838


logging:
  file:
    shinyproxy.log