Linux系统使用Docker安装RStudio服务并实现任意浏览器远程访问

news2024/9/28 9:22:24

文章目录

  • 前言
    • 1. 安装RStudio Server
    • 2. 本地访问
    • 3. Linux 安装cpolar
    • 4. 配置RStudio server公网访问地址
    • 5. 公网远程访问RStudio
    • 6. 固定RStudio公网地址

前言

RStudio Server 使你能够在 Linux 服务器上运行你所熟悉和喜爱的 RStudio IDE,并通过 Web 浏览器进行访问,从而将 RStudio IDE 的强大功能和工作效率带到基于服务器的集中式环境中。

下面介绍在Linux docker中安装RStudio Server并结合cpolar内网穿透工具,实现远程访问,docker方式安装可以避免很多问题,一键安装,如设备没有安装docker,需提前安装docker

1. 安装RStudio Server

执行docker 一键启动命令,其中-e PASSWORD=设置自己的登录密码,端口默认8787,其他参数默认

docker run -itd -p 8787:8787 --name rstudio -e PASSWORD=自己设置密码 --privileged=true -v /srv/shinyapps/:/home/rstudio/shinyapps -v /srv/shinylog/:/home/rstudio/shinylogs rocker/rstudio 

执行后,会自动下载镜像,然后启动容器,完成后,输入docker ps 即可看到运行的RStudio容器,运行挂载的端口为:8787,docker安装就完成了,非常简单快捷,且省去了繁琐的环境配置

2. 本地访问

上面安装完成后,访问Linux 8787端口,如局域网访问,需检查一下防火墙,这里使用Linux 内部浏览器访问,可以看到成功访问

输入用户名: rstudio 和自己设置的密码,即可登录成功,这样就完成了Linux RStudio Server安装且正常访问,下面安装cpolar 工具,实现在任意设备浏览器也可以访问RStudio

3. Linux 安装cpolar

上面我们成功安装了RStudio server,并局域网访问ok,下面我们在Linux安装cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤

cpolar官网地址: https://www.cpolar.com

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可

4. 配置RStudio server公网访问地址

点击左侧仪表盘的隧道管理——创建隧道,创建一个RStudio 的cpolar 公网地址隧道!

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:8787(docker 挂载的端口)
  • 域名类型:免费选择随机域名
  • 地区:选择China vip

点击创建

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

5. 公网远程访问RStudio

使用上面的https公网地址在任意设备的浏览器访问,即可成功看到我们RStudio 界面,这样一个公网地址且可以远程访问就创建好了,新地址访问,可能需要重新登录

输入账号密码,即可登录成功,这样一个远程地址就创建好了,在cpolar中,默认是随机地址,下面我们设置固定地址

6. 固定RStudio公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

保留成功后复制保留成功的二级子域名的名称

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

最后,我们使用固定的公网地址访问RStudio工具,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,新地址访问,可能需要重新登录!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1992291.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenCV图像滤波(8)getGaborKernel()函数的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 该函数返回 Gabor 滤波器系数。 Gabor 滤波器在图像处理中非常有用,特别是在纹理分析、特征提取和边缘检测等领域。 函数原型 Mat c…

借助树状数组的思想实现cuda版前缀和

昨天面试快手,面试官出了一个cuda编程题–实现前缀和。当时没有做出来,一直在思考是否有类似于规约树这样的解法,感觉好难……面试结束后搜了一下cuda前缀和的介绍,发现该问题是一个经典的cuda编程问题,NVIDIA很早之前…

论文解读,神经网络全梯度表示《Full-Gradient Representation for Neural Network Visualization》

导语 这篇论文介绍了一种新的工具,称为全梯度,用于解释神经网络的响应。这个全梯度的概念将神经网络的响应分解为两个部分:输入灵敏度和每个神经元的灵敏度分量。 输入灵敏度:输入灵敏度指的是对于神经网络输出的影响程度。它反…

node中使用http创建web服务器

1.案例代码 // 1.导入http模块 const http require(http)// 2.创建web服务器实例 const server http.createServer()// 3.为服务器实例绑定request事件,监听客户的请求 server.on(request,function(req,res){console.log(欢迎来到服务器);// req.url是客户端请求…

【Material-UI】Checkbox组件:标签使用详解

文章目录 一、Checkbox 组件与标签概述1. 组件介绍2. 基本用法 二、Checkbox 标签的关键特性1. 标签与复选框的结合2. 必填项3. 禁用状态4. 带有图标的复选框5. 多行标签 三、Checkbox 标签的实际应用场景1. 表单选择项2. 设置选项3. 同意条款 四、注意事项1. 无障碍支持2. 样式…

windows环境编译ffmpeg +visual studio 2022

最近在配置ffmpeg环境,记录一下坑点。 系统环境 visual stdio 2022 安装c桌面开发人员版 大概8g 实际下载2g左右,配置齐全其余不选。 然后环境配置,这里我使用别人的图,路劲都差不多。找到VS即可 PATH配置: 编译 …

Spring 三级缓存解决循环依赖源码分析

什么是循环依赖? ServiceA依赖ServiceB,ServiceB依赖ServiceA。 启动Spring项目时,如果想实例化ServiceA,创建完ServiceA对象后,需要依赖注入ServiceB的对象,而ServiceB实例化时,需要ServiceA&…

大模型场景应用全集:持续更新中

一、应用场景 1.办公场景 智能办公:文案生成(协助构建大纲优化表达内容生成)、PPT美化(自动排版演讲备注生成PPT)、数据分析(生成公式数据处理表格生成)。 智能会议:会议策划&…

C++之 bind 绑定器深入学习:从入门到精通!

简介 本文详细阐述了 C 中关于 bind 绑定器技术的基本概念和常用技巧。 引入动机 在标准算法库中&#xff0c;有一个算法叫 remove_if&#xff0c;其基本使用如下&#xff1a; #include <iostream> #include <string> #include <algorithm> #include &l…

FANUC发那科模块 A03B-0823-C003 I/0 EXT

IO模块接线 在FANUC系统中IO模块的种类比较多&#xff0c;每种IO模块的使用场合也不相同&#xff0c;每种IO模块的接线脚位也有很大区别&#xff0c;对于电气设计人员来说&#xff0c;清楚知道常用IO模块的接线脚位&#xff0c;才能更好的规划地址、设计图纸&#xff0c;对于设…

MySQL多表

表关系 1.一对多 应用场景 班级和学生 部门和员工 建表原则 设置&#xff08;ForeginKey&#xff09;外键连接 一个表的外键即为另外一张表的主键,以此简历两张表的关系 因此需要再学生表中新增一列&#xff0c;命名为 班级表_id&#xff0c;即班级表的主键&#xff0c;又叫…

【力扣】572.另一棵树的子树

题目描述 给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tree 也可以看…

电脑屏幕录制工具分享5款,附上详细电脑录屏教程(2024全新)

日月更迭&#xff0c;转眼间已经来到了2024年的立秋&#xff0c;在这个数字技术快速发展的时代&#xff0c;电脑录屏技术已经成为了一项不可或缺的技能&#xff0c;无论是用于工作汇报、在线教学、游戏直播还是个人娱乐。那么录屏软件哪个好用呢&#xff1f;接下来&#xff0c;…

QT按钮组

目录 按钮组 Push Button&#xff08;按钮&#xff09; Tool Button&#xff08;图片文字&#xff09; Radio Button(单选&#xff09; Check Button(多选) Command Link Button Dialog Button Box(对话按钮&#xff09; 按钮组 Push Button&#xff08;按钮&#xff09…

手机游戏录屏软件哪个好,3款软件搞定游戏录屏

在智能手机普及的今天&#xff0c;越来越多的人喜欢在手机上玩游戏&#xff0c;并希望能够录制游戏过程或者分享游戏技巧。然而&#xff0c;面对市面上众多的手机游戏录屏软件&#xff0c;很多人可能会陷入选择困难。究竟手机游戏录屏软件哪个好&#xff1f;在这篇文章中&#…

数据跨境传输的安全合规风险如何规避?获取免费解决方案白皮书

在全球化的背景下&#xff0c;企业进行有 效的资源整合&#xff0c;学习海外市场的先进技术和管理经验&#xff0c;寻找新的增长点&#xff0c;实现业务的多元化和 可持续发展&#xff0c;不仅有利于开辟新市场&#xff0c;更有助于巩固和增强企业在全球中的地位。在这种前景 下…

如何把项目上传到Gitee(超详细保姆级教程)

目录预览 一、远程仓库1、新建远程仓库1.1 克隆/下载信息介绍 2、新建分支3、配置私人令牌 二、本地仓库1、初始化本地仓库2、创建分支&#xff0c;并切换到该分支3、设置用户名、邮箱3.1 全局3.2 局部 4、设置Remote地址4.1 远程仓库有文件4.2 远程仓库没有文件 5、拉取最新代…

全面掌握Xilinx FPGA开发技术与实战技巧

FPGA以其灵活性、可定制性和并行处理能力&#xff0c;为工程师提供了实现创新解决方案的强大工具。对于初学者来说&#xff0c;学习FPGA开发需要掌握一些基础知识和技能。 学习FPGA必备的基础知识点&#xff1a; 数字逻辑基础&#xff1a;理解基本的数字逻辑概念&#xff0c;…

基于danceTrack相关论文代码列表

文章目录 数据集下载2023Observation-Centric SORT: Rethinking SORT for Robust Multi-Object Tracking 数据集下载 https://github.com/DanceTrack/DanceTrack 2023 Observation-Centric SORT: Rethinking SORT for Robust Multi-Object Tracking code: https://github.c…

微型导轨:光学仪器精准定位的支撑者

微型导轨是指宽度在25mm以下的导轨系统&#xff0c;通常由导轨和滑块组成&#xff0c;具有体积小、重量轻、精度高、噪音低、寿命长等特点。主要用于支撑和定位光学元件&#xff0c;如镜子、透镜、滤光片等。微型导轨通过提供高精度的运动控制&#xff0c;‌有利于提高设备的性…