2017-07-14 133 views
11

我试图设置一个闪亮的服务器。我需要更改Shiny应用程序的默认目录(以避免sudo权限)。闪亮的服务器:更改应用程序目录

我改变了原来的shiny-server.conf到:

#CHANGED; 
run_as userA; 

server { 
    listen 3838; 

    location/{ 

    # CHANGED 
    site_dir /home/userA/shiny-server; 

    # CHANGED 
    log_dir /home/userA/shiny-server_log; 

    directory_index on; 
    } 
} 

然而,address:3838给出了错误:

An error has occurred

Invalid application configuration.

EACCES: permission denied, stat '/home/userA/shiny-server'

问题:如何配置shiny-server.conf与通缉目录工作?

+0

我有一个类似的配置文件运行没有问题。看起来'userA'不允许读取'/ home/userA/shiny-server'的内容。你有没有尝试用'chmod'之类的东西来改变权限?你能用'su userA访问目录吗? ls/home/userA/shiny-server'? –

+0

@GregordeCillia对'/ home/userA/shiny-server'的权限是'drwxrwxrwx' – PoGibas

+0

你能给我们提供'ls -la/home/userA/shiny-server'的输出。我最好的猜测是你赋予'userA'而不是闪亮的用户。弗洛里安的文件当然是正确的,但我认为你已经遵循了'userA'的所有内容,...而你的情况中的“扭曲”是你也应该为用户做:“闪亮” 。 – BigDataScientist

回答

5

按照Documentation:

运行闪亮服务器作为另一个用户将需要调整权限授予该用户的其他必要的权限来运行闪亮服务器。特别是要确保用户已写上这些路径的权限(递归):

  • 的/ var/lib中/闪亮的服务器/(或任何定制SHINY_DATA_DIR设置您正在使用)
  • 在/ var /日志/闪亮的服务器/(和/或使用任何其他目录用于日志记录)

,并在这些路径上的读取权限(递归):

  • /SRV /闪亮的服务器/(和/或任何您正在使用的其他目录主持人闪亮的应用程序)
  • 的/ opt /闪亮的服务器/
  • 的/ etc /闪亮的服务器/(请注意,你应该阅读此目录的访问只启用,因为你可能不想让你闪亮的应用程序(这也可以运行起来很有光泽)能够写入您的配置或密码文件。)

您目前是否已正确设置了这些权限?