使用 LetsEncrypt 与 Shiny Server Pro 时出错

jbr*_*yer 1 r shiny-server

我正在尝试使用 Letscrypt 的 SSL 证书配置 Shiny Server Pro。我按照以下命令创建证书,如下所述: https: //certbot.eff.org/#ubuntuxenial-other

sudo apt-get install letsencrypt
sudo systemctl stop shiny-server
letsencrypt certonly --standalone -d pbisny.org -d www.pbisny.org
Run Code Online (Sandbox Code Playgroud)

我将此行添加到/etc/shiny-server/shiny-server.conf

 ssl /etc/letsencrypt/live/pbisny.org/privkey.pem /etc/letsencrypt/live/pbisny.org/cert.pem
Run Code Online (Sandbox Code Playgroud)

并启动服务器。

sudo systemctl start shiny-server
Run Code Online (Sandbox Code Playgroud)

然后我得到这个错误:

Job for shiny-server.service failed because a configured resource limit
was exceeded. See "systemctl status shiny-server.service" and
"journalctl -xe" for details.
Run Code Online (Sandbox Code Playgroud)

以下是详细信息systemctl status shiny-server.service

shiny-server.service - ShinyServer
   Loaded: loaded (/etc/systemd/system/shiny-server.service; enabled; vendor preset: enabled)
   Active: failed (Result: resources) since Sat 2016-10-22 12:29:19 UTC; 9s ago
  Process: 18702 ExecStopPost=/bin/sleep 5 (code=exited, status=0/SUCCESS)
  Process: 18685 ExecStartPost=/bin/sleep 3 (code=exited, status=0/SUCCESS)
  Process: 18684 ExecStart=/bin/bash -c /opt/shiny-server/bin/shiny-server --pidfile=/var/run/shiny-server.pid >> /var/l
 Main PID: 18684 (code=exited, status=0/SUCCESS)

Oct 22 12:29:11 pbis-pro systemd[1]: Starting ShinyServer...
Oct 22 12:29:14 pbis-pro systemd[1]: shiny-server.service: PID file /var/run/shiny-server.pid not readable (yet?) after 
Oct 22 12:29:19 pbis-pro systemd[1]: Failed to start ShinyServer.
Oct 22 12:29:19 pbis-pro systemd[1]: shiny-server.service: Unit entered failed state.
Oct 22 12:29:19 pbis-pro systemd[1]: shiny-server.service: Failed with result 'resources'.
Run Code Online (Sandbox Code Playgroud)

我承认,我不是系统管理员。非常感谢任何帮助弄清楚此错误含义的帮助。

jbr*_*yer 5

终于想通了。以下命令创建证书:

sudo apt-get install letsencrypt
letsencrypt certonly --standalone -d domain.com -d www.domain.com
Run Code Online (Sandbox Code Playgroud)

这是我的文件的服务器部分/etc/shiny-server/shiny-server.conf

server {
  listen 80;
  location / {
    redirect "https://domain.com" 302 true;
  }
}

server {
  listen 443;
  ssl /etc/letsencrypt/live/domain.com/privkey.pem /etc/letsencrypt/live/domain.com/cert.pem;

  # Define a location at the base URL
  location / {

    # Only up tp 20 connections per Shiny process and at most 3 Shiny processes
    # per application. Proactively spawn a new process when our processes reach 
    # 90% capacity.
    utilization_scheduler 20 .9 3;

    # Host the directory of Shiny Apps stored in this directory
    site_dir /srv/shiny-server;

    # Log all Shiny output to files in this directory
    log_dir /var/log/shiny-server;

    # When a user visits the base URL rather than a particular application,
    # an index of the applications available in this directory will be shown.
    directory_index on;
  }
Run Code Online (Sandbox Code Playgroud)

}

最后,重新启动闪亮的服务器。

sudo systemctl restart shiny-server
Run Code Online (Sandbox Code Playgroud)