Container unresponsive and container did not respond in time

Hi,

I don’t understand the problem. I can connect to my application, it works well. Then, a second person connects, my screen becomes gray and the other person can use the application without problems.

Before second connection :
Capture

After second connection :
Capture2

I modified the Shinyproxy configuration to allow container-logs, and I see no error for my application.

Final lines of the logs of the first connection on the app, the application becoming gray :

Stderr :

The following objects are masked from ‘package:stats’:

    filter, lag

The following objects are masked from ‘package:base’:

    intersect, setdiff, setequal, union

Stdout :

R version 3.5.2 (2018-12-20) -- "Eggshell Igloo"
Copyright (C) 2018 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> .libPaths(c('/usr/local/lib/R/site-library/','/R-3.5.2/library/'));great::shiny_greatshinyapp()

The logs of the second connection are exactly the same, I don’t have any error.

So, I don’t know, maybe there is a problem with the port assigned ? We had discussed together and you proposed me to automatically launch my application on port 3838. There is no problem on this side with the docker version of shinyproxy?

Here is my command in my shiny application package :

shiny_greatshinyapp <- function() {  appDir <- system.file("greatshinyapp", package = "great")  ;Sys.setlocale('LC_ALL','C');shiny::runApp(appDir, display.mode = "normal", host="0.0.0.0",port = 3838)}

Sorry to bother you with that, and thanks for your help.
Amandine

I don’t think there is a problem with port, as it works in the same way for the test application, and doesn’t cause any issues.
It is strange that you don’t see any error in the container logs. Maybe there are errors in the browser console that shed some light on the issue? Otherwise I am out of suggestions to try.

Really I don’t understand, because my application work well, but when I connect with an other user, the first container is killed, as if my application or shinyproxy doesn’t want to have twop container for this application (but it’s ok for your test app)

I have no idea too, if I ever find a solution I will keep you informed …

Thank you for your help.
Best,
Amandine

Just to resume :

No error in Shinyproxy.log :

2019-05-24 14:25:21.220  INFO 1 --- [main] e.o.c.ContainerProxyApplication          : Starting ContainerProxyApplication v0.8.1 on 6a840a5e102c with PID 1 (/opt/shinyproxy/shinyproxy.jar started by root in /opt/shinyproxy)
2019-05-24 14:25:21.223  INFO 1 --- [main] e.o.c.ContainerProxyApplication          : No active profile set, falling back to default profiles: default
2019-05-24 14:25:21.323  INFO 1 --- [main] ConfigServletWebServerApplicationContext : Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@91161c7: startup date [Fri May
 24 14:25:21 UTC 2019]; root of context hierarchy
2019-05-24 14:25:22.781  INFO 1 --- [main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2019-05-24 14:25:23.819  INFO 1 --- [main] e.o.containerproxy.service.LogService    : Container logging enabled. Log files will be saved to /logs/
2019-05-24 14:25:24.124  INFO 1 --- [main] org.xnio                                 : XNIO version 3.3.8.Final
2019-05-24 14:25:24.139  INFO 1 --- [main] org.xnio.nio                             : XNIO NIO Implementation Version 3.3.8.Final
2019-05-24 14:25:24.307  WARN 1 --- [main] io.undertow.websockets.jsr               : UT026009: XNIO worker was not set on WebSocketDeploymentInfo, the default worker will be used
2019-05-24 14:25:24.308  WARN 1 --- [main] io.undertow.websockets.jsr               : UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
2019-05-24 14:25:24.338  INFO 1 --- [main] io.undertow.servlet                      : Initializing Spring embedded WebApplicationContext
2019-05-24 14:25:24.339  INFO 1 --- [main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 3017 ms
2019-05-24 14:25:24.560  INFO 1 --- [main] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
2019-05-24 14:25:24.561  INFO 1 --- [main] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
2019-05-24 14:25:24.562  INFO 1 --- [main] .s.DelegatingFilterProxyRegistrationBean : Mapping filter: 'springSecurityFilterChain' to: [/*]
2019-05-24 14:25:24.562  INFO 1 --- [main] o.s.boot.web.servlet.RegistrationBean    : Filter orderedHiddenHttpMethodFilter was not registered (disabled)
2019-05-24 14:25:24.562  INFO 1 --- [main] o.s.boot.web.servlet.RegistrationBean    : Filter orderedHttpPutFormContentFilter was not registered (disabled)
2019-05-24 14:25:24.562  INFO 1 --- [main] o.s.b.w.servlet.ServletRegistrationBean  : Servlet dispatcherServlet mapped to [/]
2019-05-24 14:25:24.896  INFO 1 --- [main] e.o.c.stat.StatCollectorRegistry         : Disabled. Usage statistics will not be processed.
2019-05-24 14:25:25.047  INFO 1 --- [main] o.s.s.web.DefaultSecurityFilterChain     : Creating filter chain: Ant [pattern='/css/**'], []
2019-05-24 14:25:25.048  INFO 1 --- [main] o.s.s.web.DefaultSecurityFilterChain     : Creating filter chain: Ant [pattern='/img/**'], []
2019-05-24 14:25:25.048  INFO 1 --- [main] o.s.s.web.DefaultSecurityFilterChain     : Creating filter chain: Ant [pattern='/js/**'], []
2019-05-24 14:25:25.048  INFO 1 --- [main] o.s.s.web.DefaultSecurityFilterChain     : Creating filter chain: Ant [pattern='/assets/**'], []
2019-05-24 14:25:25.048  INFO 1 --- [main] o.s.s.web.DefaultSecurityFilterChain     : Creating filter chain: Ant [pattern='/webjars/**'], []
2019-05-24 14:25:25.141  INFO 1 --- [main] o.s.s.web.DefaultSecurityFilterChain     : Creating filter chain: org.springframework.security.web.util.matcher.AnyRequestMatcher@1, [org.springframework.security.web.context.reque
st.async.WebAsyncManagerIntegrationFilter@16eb3ea3, org.springframework.security.web.context.SecurityContextPersistenceFilter@75437611, org.springframework.security.web.header.HeaderWriterFilter@cb0755b, org.springframework
.security.web.authentication.logout.LogoutFilter@15043a2f, org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter@cc43f62, org.springframework.security.web.authentication.www.BasicAuthenticatio
nFilter@273444fe, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@1c5920df, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@196a42c3, org.springframework.security.we
b.authentication.AnonymousAuthenticationFilter@33bc72d1, org.springframework.security.web.session.SessionManagementFilter@712625fd, org.springframework.security.web.access.ExceptionTranslationFilter@4be29ed9, org.springfram
ework.security.web.access.intercept.FilterSecurityInterceptor@606e4010]
2019-05-24 14:25:25.165  WARN 1 --- [main] org.thymeleaf.templatemode.TemplateMode  : [THYMELEAF][main] Template Mode 'HTML5' is deprecated. Using Template Mode 'HTML' instead.
2019-05-24 14:25:25.577  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@91161c7: s
tartup date [Fri May 24 14:25:21 UTC 2019]; root of context hierarchy
2019-05-24 14:25:25.663  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/]}" onto private java.lang.Object eu.openanalytics.shinyproxy.controllers.IndexController.index(org.springframework.ui.ModelMa
p,javax.servlet.http.HttpServletRequest)
2019-05-24 14:25:25.664  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/issue],methods=[POST]}" onto public java.lang.String eu.openanalytics.shinyproxy.controllers.IssueController.postIssue(javax.s
ervlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2019-05-24 14:25:25.665  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/app/*],methods=[GET]}" onto public java.lang.String eu.openanalytics.shinyproxy.controllers.AppController.app(org.springframew
ork.ui.ModelMap,javax.servlet.http.HttpServletRequest)
2019-05-24 14:25:25.665  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/app_direct/**]}" onto public void eu.openanalytics.shinyproxy.controllers.AppController.appDirect(javax.servlet.http.HttpServl
etRequest,javax.servlet.http.HttpServletResponse)
2019-05-24 14:25:25.666  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/app/*],methods=[POST]}" onto public java.util.Map<java.lang.String, java.lang.String> eu.openanalytics.shinyproxy.controllers.
AppController.startApp(javax.servlet.http.HttpServletRequest)
2019-05-24 14:25:25.666  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/admin]}" onto private java.lang.String eu.openanalytics.shinyproxy.controllers.AdminController.admin(org.springframework.ui.Mo
delMap,javax.servlet.http.HttpServletRequest)
2019-05-24 14:25:25.674  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/api/proxy/{proxyId}],methods=[GET],produces=[application/json]}" onto public org.springframework.http.ResponseEntity<eu.openan
alytics.containerproxy.model.runtime.Proxy> eu.openanalytics.containerproxy.api.ProxyController.getProxy(java.lang.String)
2019-05-24 14:25:25.675  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/api/proxyspec/{proxySpecId}],methods=[GET],produces=[application/json]}" onto public org.springframework.http.ResponseEntity<e
u.openanalytics.containerproxy.model.spec.ProxySpec> eu.openanalytics.containerproxy.api.ProxyController.getProxySpec(java.lang.String)
2019-05-24 14:25:25.675  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/api/proxy/{proxySpecId}],methods=[POST],produces=[application/json]}" onto public org.springframework.http.ResponseEntity<eu.o
penanalytics.containerproxy.model.runtime.Proxy> eu.openanalytics.containerproxy.api.ProxyController.startProxy(java.lang.String,java.util.Set<eu.openanalytics.containerproxy.model.runtime.RuntimeSetting>)
2019-05-24 14:25:25.677  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/api/proxy],methods=[POST],produces=[application/json]}" onto public org.springframework.http.ResponseEntity<eu.openanalytics.c
ontainerproxy.model.runtime.Proxy> eu.openanalytics.containerproxy.api.ProxyController.startProxy(eu.openanalytics.containerproxy.model.spec.ProxySpec)
2019-05-24 14:25:25.677  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/api/proxyspec],methods=[GET],produces=[application/json]}" onto public java.util.List<eu.openanalytics.containerproxy.model.sp
ec.ProxySpec> eu.openanalytics.containerproxy.api.ProxyController.listProxySpecs()
2019-05-24 14:25:25.677  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/api/proxy],methods=[GET],produces=[application/json]}" onto public java.util.List<eu.openanalytics.containerproxy.model.runtim
e.Proxy> eu.openanalytics.containerproxy.api.ProxyController.listProxies()
2019-05-24 14:25:25.678  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/api/proxy/{proxyId}],methods=[DELETE],produces=[application/json]}" onto public org.springframework.http.ResponseEntity<java.l
ang.String> eu.openanalytics.containerproxy.api.ProxyController.stopProxy(java.lang.String)
2019-05-24 14:25:25.679  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/api/route/**]}" onto public void eu.openanalytics.containerproxy.api.ProxyRouteController.route(javax.servlet.http.HttpServlet
Request,javax.servlet.http.HttpServletResponse)
2019-05-24 14:25:25.683  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public java.lang.String eu.openanalytics.containerproxy.ui.ErrorController.handleError(org.
springframework.ui.ModelMap,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2019-05-24 14:25:25.683  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],consumes=[application/json],produces=[application/json]}" onto public org.springframework.http.ResponseEntity<java.util
.Map<java.lang.String, java.lang.Object>> eu.openanalytics.containerproxy.ui.ErrorController.error(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2019-05-24 14:25:25.684  INFO 1 --- [main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/login],methods=[GET]}" onto public java.lang.Object eu.openanalytics.containerproxy.ui.LoginController.getLoginPage(java.util.
Optional<java.lang.String>,org.springframework.ui.ModelMap,javax.servlet.http.HttpServletRequest)
2019-05-24 14:25:25.737  INFO 1 --- [main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/assets/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2019-05-24 14:25:25.738  INFO 1 --- [main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2019-05-24 14:25:25.738  INFO 1 --- [main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2019-05-24 14:25:25.759  INFO 1 --- [main] .m.m.a.ExceptionHandlerExceptionResolver : Detected @ExceptionHandler methods in baseController.RestErrorHandler
2019-05-24 14:25:25.793  INFO 1 --- [main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2019-05-24 14:25:25.908  INFO 1 --- [main] o.s.b.a.w.s.WelcomePageHandlerMapping    : Adding welcome page template: index
2019-05-24 14:25:25.996  INFO 1 --- [main] o.s.l.c.support.AbstractContextSource    : Property 'userDn' not set - anonymous context will be used for read-write operations
2019-05-24 14:25:26.169  INFO 1 --- [main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2019-05-24 14:25:26.171  INFO 1 --- [main] o.s.j.e.a.AnnotationMBeanExporter        : Bean with name 'dataSource' has been autodetected for JMX exposure
2019-05-24 14:25:26.178  INFO 1 --- [main] o.s.j.e.a.AnnotationMBeanExporter        : Located MBean 'dataSource': registering with JMX server as MBean [com.zaxxer.hikari:name=dataSource,type=HikariDataSource]
2019-05-24 14:25:26.250  INFO 1 --- [main] o.s.b.w.e.u.UndertowServletWebServer     : Undertow started on port(s) 80 (http) with context path ''
2019-05-24 14:25:26.254  INFO 1 --- [main] e.o.c.ContainerProxyApplication          : Started ContainerProxyApplication in 5.92 seconds (JVM running for 7.82)
2019-05-24 14:25:33.738  INFO 1 --- [XNIO-2 task-1] io.undertow.servlet                      : Initializing Spring FrameworkServlet 'dispatcherServlet'
2019-05-24 14:25:33.738  INFO 1 --- [XNIO-2 task-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization started
2019-05-24 14:25:33.766  INFO 1 --- [XNIO-2 task-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization completed in 28 ms
2019-05-24 14:25:35.921  INFO 1 --- [XNIO-2 task-3] e.o.containerproxy.service.UserService   : User logged in [user: avelt]
2019-05-24 14:25:35.923  INFO 1 --- [XNIO-2 task-3] e.o.containerproxy.service.UserService   : User logged in [user: avelt]
2019-05-24 14:25:40.193  INFO 1 --- [XNIO-2 task-6] c.s.docker.client.DefaultDockerClient    : Starting container with Id: 26f6223bbc5ead7a4a94fe76beb16a2fc23d0ba3e895002307be495e80a7bac9
2019-05-24 14:25:46.251  INFO 1 --- [XNIO-2 task-6] e.o.containerproxy.service.ProxyService  : Proxy activated [user: avelt] [spec: GREAT] [id: eeeac79b-e567-48c0-88b4-604f43fbae71]
2019-05-24 14:26:00.553  INFO 1 --- [XNIO-2 task-9] e.o.containerproxy.service.UserService   : User logged in [user: larenault]
2019-05-24 14:26:00.554  INFO 1 --- [XNIO-2 task-9] e.o.containerproxy.service.UserService   : User logged in [user: larenault]
2019-05-24 14:26:33.722  INFO 1 --- [XNIO-2 task-8] c.s.docker.client.DefaultDockerClient    : Starting container with Id: b1075a949f7e0d8fb9a192425fdd37c81a941f86c81b2b5e8f56cf2444522ed1
2019-05-24 14:26:40.653  INFO 1 --- [XNIO-2 task-8] e.o.containerproxy.service.ProxyService  : Proxy activated [user: larenault] [spec: GREAT] [id: 1248c044-b581-421c-af1a-0ba23531de79]

Logs of the first connection on hello application, and the second, they are the same :
Stdout :

R version 3.5.2 (2018-12-20) -- "Eggshell Igloo"
Copyright (C) 2018 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> shinyproxy::run_01_hello()

Stderr :

Loading required package: shiny

Listening on http://0.0.0.0:3838

Logs of the first connection on my application, and the second, they are the same :
Stdout :
R version 3.5.2 (2018-12-20) – “Eggshell Igloo”
Copyright © 2018 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> great::shiny_greatshinyapp()

Stderr :
Loading required package: shiny

Listening on http://0.0.0.0:3838
Loading required namespace: BiocManager
Loading required package: ggplot2

Attaching package: 'plotly'

The following object is masked from 'package:ggplot2':

    last_plot

The following object is masked from 'package:stats':

    filter

The following object is masked from 'package:graphics':

    layout


Attaching package: 'shinyalert'

The following object is masked from 'package:shiny':

    runExample


Attaching package: 'shinyjs'

The following object is masked from 'package:shinyalert':

    runExample

The following object is masked from 'package:shiny':

    runExample

The following objects are masked from 'package:methods':

    removeClass, show


Attaching package: 'DT'

The following objects are masked from 'package:shiny':

    dataTableOutput, renderDataTable

Loading required package: viridis
Loading required package: viridisLite

======================
Welcome to heatmaply version 0.16.0

Type citation('heatmaply') for how to cite the package.
Type ?heatmaply for the main documentation.

The github page is: https://github.com/talgalili/heatmaply/
Please submit your suggestions and bug-reports at: https://github.com/talgalili/heatmaply/issues
Or contact: <tal.galili@gmail.com>
======================

Loading required package: S4Vectors
Loading required package: stats4
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following object is masked from 'package:heatmaply':

    normalize

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min


Attaching package: 'S4Vectors'

The following objects are masked from 'package:data.table':

    first, second

The following object is masked from 'package:plotly':

    rename

The following object is masked from 'package:base':

    expand.grid

Loading required package: IRanges

Attaching package: 'IRanges'

The following object is masked from 'package:data.table':

    shift

The following object is masked from 'package:plotly':

    slice

Loading required package: GenomicRanges
Loading required package: GenomeInfoDb
Loading required package: SummarizedExperiment
Loading required package: Biobase
Welcome to Bioconductor

    Vignettes contain introductory material; view with
    'browseVignettes()'. To cite Bioconductor, see
    'citation("Biobase")', and for packages 'citation("pkgname")'.

Loading required package: DelayedArray
Loading required package: matrixStats

Attaching package: 'matrixStats'

The following objects are masked from 'package:Biobase':

    anyMissing, rowMedians

Loading required package: BiocParallel

Attaching package: 'DelayedArray'

The following objects are masked from 'package:matrixStats':

    colMaxs, colMins, colRanges, rowMaxs, rowMins, rowRanges

The following objects are masked from 'package:base':

    aperm, apply


Attaching package: 'rtracklayer'

The following object is masked from 'package:plotly':

    export

Loading required package: e1071
Warning: no DISPLAY variable so Tk is not available

Attaching package: 'DynDoc'

The following object is masked from 'package:rtracklayer':

    path

The following object is masked from 'package:DelayedArray':

    path

The following object is masked from 'package:BiocGenerics':

    path

Loading required package: AnnotationDbi

Attaching package: 'AnnotationDbi'

The following object is masked from 'package:plotly':

    select

Loading required package: limma

Attaching package: 'limma'

The following object is masked from 'package:DESeq2':

    plotMA

The following object is masked from 'package:BiocGenerics':

    plotMA


Attaching package: ‘dplyr’

The following object is masked from ‘package:AnnotationDbi’:

    select

The following object is masked from ‘package:widgetTools’:

    funs

The following object is masked from ‘package:matrixStats’:

    count

The following object is masked from ‘package:Biobase’:

    combine

The following objects are masked from ‘package:GenomicRanges’:

    intersect, setdiff, union

The following object is masked from ‘package:GenomeInfoDb’:

    intersect

The following objects are masked from ‘package:IRanges’:

    collapse, desc, intersect, setdiff, slice, union

The following objects are masked from ‘package:S4Vectors’:

    first, intersect, rename, setdiff, setequal, union

The following objects are masked from ‘package:BiocGenerics’:

    combine, intersect, setdiff, union

The following objects are masked from ‘package:data.table’:

    between, first, last

The following objects are masked from ‘package:stats’:

    filter, lag

The following objects are masked from ‘package:base’:

    intersect, setdiff, setequal, union

But when larenault user connect on my application, the container of avelt user is killed, I don’t know why, I have no errror.

PS : the configuration of my shinyproxy :

proxy:
  port: 80
  container-log-path: /logs/
  support:
    mail-to-address: -
  authentication: simple
  container-wait-time: 1800000
  heartbeat-timeout: 1800000
  admin-groups: admins
  docker:
    internal-networking: true
  users:
  - name: larenault
    password: larenaultadmin
    groups : password1
  - name: avelt
    password: password2
    groups: admins
  specs:
  - id: GREAT
    display-name: -
    description : -
    container-cmd: ["R", "-e", "great::shiny_greatshinyapp()"]
    container-network: sp-example-net
    container-image: avelt/great
  - id: 01_hello
    display-name: Hello Application
    description: Application which demonstrates the basics of a Shiny app
    container-cmd: ["R", "-e", "shinyproxy::run_01_hello()"]
    container-network: sp-example-net
    container-image: openanalytics/shinyproxy-demo

logging:
  file:
    /logs/shinyproxy.log

The Dockerfile of my application :

FROM rocker/r-ver:3.5.2

ENV DEBIAN_FRONTEND noninteractive

RUN apt-get update && apt-get install -y \
sudo \
gdebi-core \
libc6-dev-i386 \
pandoc \
pandoc-citeproc \
libcurl4-gnutls-dev \
libcairo2-dev \
libxt-dev \
openssl \
libxml2-dev \
libssl-dev \
tcl8.5-dev \
tk8.5-dev \
wget \
build-essential \
fort77 \
xorg-dev \
liblzma-dev libblas-dev gfortran \
gcc-multilib \
gobjc++ \
aptitude \
libreadline-dev \
libbz2-dev \
bzip2 \
xtail \
x11-common \
xserver-xorg \
default-jdk \
qpdf \
libx11-dev \
autotools-dev \
cdbs \
libauthen-sasl-perl \
libfile-basedir-perl \
libfile-desktopentry-perl \
libfile-listing-perl \
libfile-mimeinfo-perl \
libfont-afm-perl \
libhtml-form-perl \
libhtml-format-perl \
libhtml-tree-perl \
libhttp-cookies-perl \
libhttp-daemon-perl \
libhttp-negotiate-perl \
libio-socket-ssl-perl \
libipc-system-simple-perl \
libjpeg-dev \
liblapack-dev \
liblapack3 \
liblwp-protocol-https-perl \
libmailtools-perl \
libncurses5-dev \
libnet-dbus-perl \
libnet-http-perl \
libnet-smtp-ssl-perl \
libnet-ssleay-perl \
libpaper-utils \
libpaper1 \
libtcl8.6 \
libtext-iconv-perl \
libtie-ixhash-perl \
libtk8.6 \
libwww-perl \
libwww-robotrules-perl \
libx11-protocol-perl \
libxml-parser-perl \
libxml-twig-perl \
libxml-xpathengine-perl \
perl-openssl-defaults \
x11-xserver-utils \
xdg-utils \
devscripts \
libdigest-hmac-perl \
libgssapi-perl \
liblapack-doc-man \
liblapack-doc \
libcrypt-ssleay-perl \
ncurses-doc \
tcl8.6 \
tk8.6 \
libauthen-ntlm-perl \
libunicode-map8-perl \
libunicode-string-perl \
xml-twig-tools \
ess \
debhelper \
nickle \
cairo-5c \
xorg-docs-core \
gvfs-bin \
gconf-service \
libasound2 \
libatk1.0-0 \
libcairo2 \
libcups2 \
libfontconfig1 \
libgdk-pixbuf2.0-0 \
libgtk-3-0 \
libnspr4 \
libpango-1.0-0 \
libxss1 \
libgit2-dev \
fonts-liberation \
libappindicator1 \
libnss3 \
lsb-release \
xdg-utils

## packages needed for basic shiny functionality
RUN Rscript -e "install.packages('MASS',repos='https://cloud.r-project.org');install.packages('KernSmooth',repos='https://cloud.r-project.org');install.packages('gplots',repos='https://cloud.r-project.org')
;install.packages('seriation',repos='https://cloud.r-project.org');install.packages('cluster',repos='https://cloud.r-project.org');install.packages('gclus',repos='https://cloud.r-project.org');install.packa
ges(c('XML', 'shinythemes', 'shinyjs','ggplot2','dendextend','seriation','png', 'DT', 'shinycssloaders','data.table','promises','tidyr','dplyr','purrr','httpuv','mime','shinyWidgets','glue','rlang','shinyal
ert'),repos='https://cloud.r-project.org')"
RUN Rscript -e "install.packages('lattice', repos='https://cloud.r-project.org');install.packages('nnet', repos='https://cloud.r-project.org');install.packages('flexmix', repos='https://cloud.r-project.org'
);install.packages('class', repos='https://cloud.r-project.org');install.packages('devtools', repos='https://cloud.r-project.org');library('devtools');devtools::install_github('rstudio/d3heatmap');devtools:
:install_github('talgalili/heatmaply');devtools::install_github('ropensci/plotly')"

RUN Rscript -e 'install.packages("BiocManager")' && \
Rscript -e "library(BiocManager)" && \
Rscript -e "install.packages(c('shiny', 'rmarkdown'), repos='https://cloud.r-project.org')" && \
Rscript -e "install.packages(c('Matrix','cluster'), repos='https://cloud.r-project.org')" && \
Rscript -e "install.packages(c('Matrix','survival'), repos='https://cloud.r-project.org')" && \
Rscript -e "BiocManager::install(c('tkWidgets','widgetTools'),ask=FALSE)" && \
Rscript -e "install.packages('rpart', repos='https://cloud.r-project.org')" && \
Rscript -e "install.packages('Hmisc', repos='https://cloud.r-project.org')" && \
Rscript -e "BiocManager::install(c('S4Vectors','IRanges','GenomicRanges','SummarizedExperiment','Biobase','BiocGenerics','BiocParallel','locfit','geneplotter','RcppArmadillo','annotate','biomaRt','rtracklay
er','genefilter','geneplotter','GenomicFeatures'),ask=FALSE)" && \
Rscript -e "BiocManager::install(c('hexbin','Mfuzz','edgeR'),ask=FALSE)"

RUN Rscript -e "install.packages('https://bioconductor.org/packages/release/bioc/src/contrib/DESeq2_1.24.0.tar.gz',repos = NULL,type = 'source')"

# install great package with great shiny application
COPY great_0.1.0.tar.gz /root/
RUN R CMD INSTALL /root/great_0.1.0.tar.gz
RUN rm /root/great_0.1.0.tar.gz

# set host and port
COPY Rprofile.site /usr/lib/R/etc/

EXPOSE 3838

CMD ["R", "-e great::shiny_greatshinyapp()"]

Hi,
It was a RAM problem, there was not enough RAM on my VM to run my application twice in parallel (because it loads a lot of data).
Thank you for your help, all work fine now.
Best,
Amandine

3 Likes