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配置。
修改配置文件
#修改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 接口、缓存策略、限制等 |
改为1080和10443,然后Ctrl+O保存 -》 按回车 -》 Ctrl+X退出。重启Apache
再次使用http://IP:1080/ocpu访问,成功
打包发布
包结构
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/
编译后生成压缩包
上传tar.gz到服务器,安装包
#安装
R CMD INSTALL mypkg_0.1.0.tar.gz
#查看安装的包
ls /usr/local/lib/R/site-library/
查看包
方法 | 命令/地址 | 用途说明 |
---|---|---|
R 命令 | installed.packages() |
查看所有已安装包 |
R 命令 | library() |
列出可用包(区分系统包和site-library) |
R 命令 | .libPaths() |
查看包安装的路径 |
OpenCPU API | http://<host>/ocpu/library/ |
查看 OpenCPU 下可用的包 |
curl 命令 | curl http://localhost/ocpu/library/ |
终端快速查看部署的包 |
使用RStudio
devtools::build()
devtools::check()
devtools::install()
