docker与shiny的服务器亲问题

我已经在centos上创build了两个带shiny服务器的centos

  • Docker与shiny server – 免费版在这里
  • Docker与shiny server pro (使用临时许可证) 在这里

这些docker是在centos ,因为它被认为最终将作为受支持的Linux版本(可能是dockerised或native)在RHEL运行。 目前,它们为testing和开发提供了一个便捷的途径。

它们主要是为了开发而devise的:它们包括RRStudio ServerShiny Server :可能不是Docker纯粹主义者会做或推荐的东西(可能生产版本将基于docker撰写)。

我遇到的问题是,虽然有shiny server免费版的Docker工作正常, 但有了shiny server pro的Docker不起作用 (可能是supervisord的问题?)。

 2015-09-19 12:40:10,379 CRIT Supervisor running as root (no user in config file) 2015-09-19 12:40:10,385 INFO supervisord started with pid 1 2015-09-19 12:40:10,387 INFO spawned: 'shinyserver' with pid 8 2015-09-19 12:40:10,388 INFO spawned: 'rserver' with pid 9 2015-09-19 12:40:10,404 INFO success: rserver entered RUNNING state, process has stayed up for > than 0 seconds (startsecs) 2015-09-19 12:40:10,405 INFO exited: rserver (exit status 0; expected) 2015-09-19 12:40:10,405 INFO received SIGCLD indicating a child quit 2015-09-19 12:40:10,955 INFO exited: shinyserver (exit status 8; not expected) 2015-09-19 12:40:10,955 INFO received SIGCLD indicating a child quit 2015-09-19 12:40:11,959 INFO spawned: 'shinyserver' with pid 31 2015-09-19 12:40:12,236 INFO exited: shinyserver (exit status 8; not expected) 2015-09-19 12:40:12,236 INFO received SIGCLD indicating a child quit 2015-09-19 12:40:14,243 INFO spawned: 'shinyserver' with pid 37 2015-09-19 12:40:14,520 INFO exited: shinyserver (exit status 8; not expected) 2015-09-19 12:40:14,521 INFO received SIGCLD indicating a child quit 2015-09-19 12:40:17,533 INFO spawned: 'shinyserver' with pid 43 2015-09-19 12:40:17,807 INFO exited: shinyserver (exit status 8; not expected) 2015-09-19 12:40:17,808 INFO received SIGCLD indicating a child quit 2015-09-19 12:40:18,811 INFO gave up: shinyserver entered FATAL state, too many start retries too quickly 2015-09-19 12:40:43,272 CRIT received SIGTERM indicating exit request 

这是相当令人惊讶的,因为代码基础是常见的(当然)。 也许关于这个过程如何产生的问题?

如果有人能帮我findshiny server proconfiguration中的错误,那将是一件好事。

我已经设法解决这个问题。 正如所料,这是supervisord.conf一个不好的configuration。

shiny的服务器需要以root身份启动,而我错误地将user=shiny而不是user=root 。 我很惊讶,这并没有在免费版中产生错误。

在这里为后代做了工作的主pipeconfiguration:

 [supervisord] nodaemon=true logfile=/var/log/supervisor/supervisord.log pidfile = /tmp/supervisord.pid [program:rserver] user=root command=/usr/lib/rstudio-server/bin/rserver stdout_logfile=/var/log/supervisor/%(program_name)s.log stderr_logfile=/var/log/supervisor/%(program_name)s.log startsecs=0 autorestart=false exitcodes=0 [program:shinyserver] user=root startsecs = 0 command=/bin/bash -c "exec shiny-server >> /var/log/shiny-server.log 2>&1" stdout_logfile=/var/log/supervisor/%(program_name)s.log stderr_logfile=/var/log/supervisor/%(program_name)s.log autorestart=false redirect_stderr=true 

dockerfile等可在我的github页面smartinsightsfromdata