gpt4 book ai didi

r - 如何在 CentOS6 上启动/停止/刷新 OpenCPU?

转载 作者:行者123 更新时间:2023-12-02 01:44:08 25 4
gpt4 key购买 nike

我已经在 CentOS6 上成功构建并安装了 OpenCPU 和 RStudio Server。一切都按预期工作,我的本地 R 包确实获得了成功的 GET/POST 响应。

但有几件事似乎不起作用:

  • 我想不出一个干净的方法来启动/停止/刷新 OpenCPU。我目前正在使用 apachectl restart 但我什至不确定是否会按预期重新加载 R 包。我在 /usr/lib/opencpu/scripts 尝试了 Jeroen 的 bash 脚本,但它们似乎需要相当多的调整才能在 CentOS 上工作。
  • (可能与上述有关)我在 /etc/opencpu/Renviron 文件中使用 load()readRDS()(也尝试在 /etc/opencpu/Rprofile) 中将持久数据集加载到全局环境中——但这似乎不起作用。我没有收到任何错误日志,但对象在后续请求中不可用。
  • 在 Ubuntu 上 OpenCPU 似乎配置为在 opencpu 用户下运行。在 CentOS6 上,它似乎在安装后在 root 下运行。我想修改它,但不确定如何修改。

只是想知道是否有人在 CentOS6 上成功配置了 OpenCPU。

非常感谢,--Mel。

最佳答案

一些答案​​

  • 运行 sudo apachectl restart 将重新启动。目前 rpm 中没有用于 opencpu 的特殊初始化或 systemd 脚本,但基本上所有脚本在 ubuntu 上所做的就是重新启动 apache 并向终端打印一些消息。

  • REnviron 文件仅用于环境变量。您需要为自定义代码使用 RProfile。另见 help .也许它没有在正确的环境中加载。尝试:load(file, envir = globalenv(), verbose = TRUE)

  • 请注意,推荐的存储方式是将其放入 R 包中,作为延迟加载数据或 sysdata.rda(参见 writing R extensions)。然后,您可以在启动时加载或附加包,或者更好的是:从包含您的应用程序或 R 函数的包中正式导入数据集。

  • Afaik,centos 以用户 apache 运行 httpd 请求?是什么让您认为 opencpu 以 root 身份运行?这当然不是本意。在 CentOS 上,您有时需要使用 SELinux httpd 标志来让您的应用程序正常工作,另请参阅 rpm readme .

rpm 软件包比 debian 软件包更新一些,测试较少,所以如果您有问题或建议,请在 github 上提出问题。

关于r - 如何在 CentOS6 上启动/停止/刷新 OpenCPU?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26706178/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com