在 R 中套用閃亮的 runApp() 時,與 Firefox 的連線失敗

在 R 中套用閃亮的 runApp() 時,與 Firefox 的連線失敗

我正在做閃亮的教程,就像上面解釋的那樣https://shiny.rstudio.com/tutorial/writing-tutorial/lesson1/

在某個時刻,我必須運行範例應用程式。範例應用程式儲存在資料夾中/usr/local/lib/R/site-library/shiny/examples/01_hello我想在終端中運行它。所以我輸入

sudo -i R  # entering my password so that R is being started
library(shiny)
runApp("/usr/local/lib/R/site-library/shiny/examples/01_hello")

但它不起作用。

我的控制台給出以下錯誤訊息:

Listening on http://127.0.0.1:3530 

Running Firefox as root in a
regular user's session is not supported.  ($XAUTHORITY is
/run/user/1000/gdm/Xauthority which is owned by tobias.) 

Running
Firefox as root in a regular user's session is not supported. 
($XAUTHORITY is /run/user/1000/gdm/Xauthority which is owned by
tobias.) 

Running Firefox as root in a regular user's session is not
supported.  ($XAUTHORITY is /run/user/1000/gdm/Xauthority which is
owned by tobias.) 

/usr/bin/xdg-open: 851: /usr/bin/xdg-open: iceweasel: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: seamonkey: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: mozilla: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: epiphany: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: konqueror: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: chromium: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: chromium-browser: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: google-chrome: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: www-browser: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: links2: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: elinks:not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: links: not found
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: lynx: not found
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: w3m: not found 
xdg-open: no method available for opening 'http://127.0.0.1:3530'

這裡不支援在普通使用者會話中以 root 身分執行 Firefox。 ($XAUTHORITY 是 /run/user/1000/gdm/Xauthority,由 radix 擁有。)我發現了 firefox 問題,但與 R 無關...

我的目標是輸入後runApp(),firefox 打開,分別打開一個新分頁並顯示閃亮的應用程序,以便我可以與其互動。

另外我必須說,我是 ubuntu 的新手 - 所以在回答我的問題時請記住這一點。提前謝謝了!

答案1

Shiny 使用高範圍(>1024)的 TCP 端口,因此您不需要sudo這裡。

以普通使用者身分執行所有命令,該使用者有權存取 Xorg:

R
library(shiny)
runApp("/usr/local/lib/R/site-library/shiny/examples/01_hello")

相關內容