2017-07-14 135 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 /閃亮的服務器/(請注意,你應該閱讀此目錄的訪問只啓用,因爲你可能不想讓你閃亮的應用程序(這也可以運行起來很有光澤)能夠寫入您的配置或密碼文件。)

您目前是否已正確設置了這些權限?