Fork me on GitHub

OpenCPU安装(Ubantu)

官网

https://www.opencpu.org/download.html

Ubuntu安装OpenCPU

# Requires Ubuntu 24.04 (Noble) or 22.04 (Jammy)
sudo add-apt-repository -y ppa:opencpu/opencpu-2.2
sudo apt-get update
sudo apt-get upgrade

# Installs OpenCPU server(这里会安装R Opencpu Apache)
#•	apache2
#•	r-base
#•	opencpu-lib,提供 Apache 与 R 的连接桥梁
#•	一堆 R 相关依赖包
sudo apt-get install -y opencpu-server
# Done! Open http://IP/ocpu in your browser

# Optional: installs rstudio in http://IP/rstudio
sudo apt-get install -y rstudio-server 

opencpu-server包含opencpu-lib,
+----------------------+
| opencpu-server | ← 顶层包:服务端配置+路由+整合
+----------------------+
| opencpu-lib | ← R语言层核心功能封装 (R接口)
+----------------------+
| R + Apache | ← 系统层依赖 (语言+Web服务)
+----------------------+
opencpu-lib 是一个将 R 嵌入到 Apache 中,并通过 HTTP 提供服务的共享库,是 OpenCPU 后端的核心组件之一。就像 mod_php 是让 Apache 能运行 PHP一样。

测试

浏览器访问http://IP/ocpu,如果出现404等其他情况,则需要更改apache配置。
image

修改配置文件

#修改apache配置端口
sudo nano /etc/apache2/ports.conf
sudo nano /etc/apache2/sites-enabled/000-default.conf
#重启apache
sudo systemctl restart apache2
sudo systemctl status apache2

OpenCPU 并不把脚本放到 /var/www/html 这类传统 Web 根目录里,而是通过 RESTful API 调用 R 代码。所以不必关心网站根路径。

类型 路径示例 用途说明
用户工作目录 /home/rstudio/home/opencpu 开发脚本、上传数据、用户级接口执行
R 包安装目录 /usr/lib/R/library/ /ocpu/library/ 接口使用的包目录
会话临时目录 /tmp/ocpu-temp/ OpenCPU 调用的 session 缓存结果存放处
配置文件位置 /etc/opencpu/server.conf 控制开放的 API 接口、缓存策略、限制等

image
image
改为1080和10443,然后Ctrl+O保存 -》 按回车 -》 Ctrl+X退出。重启Apache
image
再次使用http://IP:1080/ocpu访问,成功
image

打包发布

包结构

mypkg/
├── DESCRIPTION
├── NAMESPACE
├── R/
| └── myfunc.R
•DESCRIPTION:包的元信息文件(必须)
•NAMESPACE:导出/导入函数的声明(必须)
•R/:放置函数代码的目录(必须)
DESCRIPTION

Package: mypkg
Type: Package
Title: What the Package Does
Version: 1.0.0
Author: 秋先生
Maintainer: 秋先生 <you@example.com>
Description: 这里写描述信息。
License: MIT

NAMESPACE

export(myfunc)

编译

#编译打包,需要在mypkg上级目录
R CMD build mypkg/

编译后生成压缩包
image
上传tar.gz到服务器,安装包

#安装
R CMD INSTALL mypkg_0.1.0.tar.gz
#查看安装的包
ls /usr/local/lib/R/site-library/

image

查看包

方法 命令/地址 用途说明
R 命令 installed.packages() 查看所有已安装包
R 命令 library() 列出可用包(区分系统包和site-library)
R 命令 .libPaths() 查看包安装的路径
OpenCPU API http://<host>/ocpu/library/ 查看 OpenCPU 下可用的包
curl 命令 curl http://localhost/ocpu/library/ 终端快速查看部署的包

image

image

使用RStudio

devtools::build()
devtools::check()
devtools::install()
posted @ 2025-05-21 14:57  秋夜雨巷  阅读(43)  评论(0)    收藏  举报