如何将R Shiny应用部署至IBM Cloud服务器?
将R Shiny应用从Shiny Server部署到IBM Cloud服务器的实操步骤
嘿,既然你已经完成了R包准备、R Studio Server安装、入站安全规则配置还有用户名密码创建这些基础工作,那咱们就一步步把你的Shiny应用部署到IBM Cloud服务器上吧:
一、整理好你的Shiny应用文件
- 把你的Shiny应用所有相关文件(不管是单文件的
app.R,还是拆分的ui.R+server.R,还有依赖的数据集、图片等资源)都放到一个单独的文件夹里,比如命名成my_shiny_app,方便后续操作。 - 先在本地或者当前的R Studio Server里测试一遍这个应用,确保它能正常运行,避免部署后再踩基础功能的坑。
二、在IBM Cloud服务器上配置Shiny Server环境
- 先登录到你IBM Cloud服务器上的R Studio Server(用你之前创建的用户名密码),确认服务器上的Shiny环境没问题:
- 打开R控制台,运行
install.packages("shiny")——如果还没安装Shiny包的话,先装上。 - 安装Shiny Server:打开服务器终端,运行下面的命令(如果是Ubuntu/Debian系统,用这个;要是CentOS的话,把
apt-get换成yum就行):sudo apt-get update && sudo apt-get install shiny-server
- 打开R控制台,运行
- 接下来配置Shiny Server的站点:
- 进入Shiny Server的配置目录,一般是
/etc/shiny-server/。 - 你可以直接编辑默认的
shiny-server.conf,或者在/etc/shiny-server/sites-available/目录下新建一个专属的配置文件,比如my_app.conf。配置内容大概是这样的,记得替换成你自己的路径:server { listen 3838; # 这是Shiny的默认端口,要确保你之前配置的入站安全规则里开放了这个端口 location /my_app { site_dir /绝对路径/到你的/my_shiny_app文件夹; # 替换成实际的服务器路径 log_dir /var/log/shiny-server; directory_index on; } } - 如果是新建的站点配置文件,别忘了创建软链接到
sites-enabled目录,让配置生效:sudo ln -s /etc/shiny-server/sites-available/my_app.conf /etc/shiny-server/sites-enabled/
- 进入Shiny Server的配置目录,一般是
三、把应用文件传到IBM Cloud服务器
- 两种方式可选:
- 用
scp命令从本地直接传文件夹到服务器:scp -r /本地电脑上的/my_shiny_app路径 你的服务器用户名@IBM服务器IP:/服务器上的目标路径/ - 直接在R Studio Server界面右上角点「上传」按钮,把所有应用文件上传到你指定的服务器目录里。
- 用
- 上传完后,一定要设置好文件夹的权限,让Shiny Server能正常访问:
sudo chown -R shiny:shiny /服务器上的/my_shiny_app路径 sudo chmod -R 755 /服务器上的/my_shiny_app路径
四、启动/重启Shiny Server服务
- 在服务器终端运行命令,重启Shiny Server让新配置和应用生效:
sudo systemctl restart shiny-server - 可以检查一下服务状态,确认它正常启动了:
sudo systemctl status shiny-server
五、测试访问你的应用
- 打开本地浏览器,输入
http://你的IBM服务器IP:3838/my_app,要是能正常加载出你的Shiny应用,那部署就成功啦! - 如果遇到访问问题,先检查入站安全规则是不是真的开放了3838端口,再去
/var/log/shiny-server/目录下看日志文件,排查具体的错误原因。
内容的提问来源于stack exchange,提问作者Rahul R Kulkarni
相关产品推荐
相关产品推荐

