項目需求是用shiny實現(xiàn)UI界面,后臺通過R包reticualte來調(diào)用miniconda python來實現(xiàn)后臺邏輯。
在本地R studio一切都很順利,然而到了remote server部署上(Docker shiny server),錯誤提示找不到python。
在docker內(nèi)部安裝miniconda時,是通過root安裝。
在R腳本上也設(shè)置了Sys.setenv(RETICULATE_PYTHON = '/root/miniconda3/bin/python3'),還是出錯。
最后發(fā)現(xiàn)是shiny server權(quán)限問題,shiny server是shiny用戶運行的,而鏡像內(nèi)/root默認權(quán)限為700,所以導致shiny server無法訪問python。
最終,通過修改/root權(quán)限為777,解決問題。