2017-10-16 5 views

답변

1

Shiny Server 구성 설명서의 1.3.5 R Installation Location에이 기능을 작동시키는 데 필요한 키가 나와 있습니다. 주요 아이디어는 R이라는 고유 한 실행 파일을 만들고 실행 파일에 R 실행 파일로 원하는 명령 줄 인수를 전달하는 것입니다.

1 단계 : 나는 밥 내 이름을 새 사용자

을 만듭니다. Bob의 홈 디렉토리에 다음 파일을 추가하십시오.

/home/bob/.bash_profile :

export PATH=/home/bob/myR:$PATH 

/홈/밥/MYR을/R :

#!/bin/bash 
/usr/bin/R --max-ppsize 123456 "[email protected]" 

chmod +x /home/bob/myR/R를 수행하여 두 번째 파일을 실행합니다.

2 단계 : 빛나는 config 파일에서 밥

당신의 응용 프로그램을 실행하는 반짝 구성은 다음과 같은 추가 :

location /testApp { 
    run_as bob; 
    site_dir /srv/shiny-server/testApp; 
    log_dir /var/log/shiny-server; 
} 

testApp 실행, 빛나는 것이다 첫번째 소스 밥의 .bash_profile,을하는 R$PATH 우선 순위로 인해 Bob의 버전을 가리 킵니다. Bob의 버전은 단순히 원하는 --max-ppsize 옵션을 추가하고 다른 옵션 인 "[email protected]"과 함께 실제 R 실행 파일에 전달합니다. 당신은 수행하여이 직접 테스트 할 수 있습니다

$ su bob 
$ source /home/bob/.bash_profile 
$ which R 
/home/bob/myR/R 
$ R -q --args Test 
> commandArgs() 
[1] "/usr/lib/R/bin/exec/R" "--max-ppsize"   "123456" 
[4] "-q"     "--args"    "Test" 

3 단계 :

여기 내 테스트 반짝 응용 프로그램의를 예상대로 모든 것을 확신의 실행을 만들기 위해 TestApp가를 만듭니다. 파이어 폭스에서

는 /srv/shiny-server/testApp/ui.R

ui <- fluidPage(
    textOutput("user"), 
    textOutput("cmdArgs") 
) 

/srv/shiny-server/testApp/server.R

server <- function(input, output, session) 
{ 
    output$user <- renderText({ 
    Sys.info()["user"] 
    }) 

    output$cmdArgs <- renderText({ 
    paste(commandArgs(), collapse=" ") 
    }) 
} 

결과 :

enter image description here