在群晖上安装RStudio服务器版

2024-01-17 13:52

本文主要是介绍在群晖上安装RStudio服务器版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

应网友 Python开垦者 的要求折腾,但老苏并不是程序员,对这种专业工具并不熟,所以错漏在所难免,见谅;

月初,R 社区大佬人物谢益辉,在个人博客宣布被 RStudio/Posit 离职,表面上只是个人理念和商业发展理念的冲突,但在老苏看来,更像是大环境下的迫不得已。

什么是 RStudio ?

RStudio 是为 R 语言设计的一种跨平台集成开发环境。其特色包括可客制化的软件套件视觉化界面与同团队开发的一系列数据可视化与出版工具。RStudio 有免费的自由软件版本及收费的专业版本,并分为在本地电脑上执行的桌面版和与在服务器上执行而可由浏览器连接后使用的服务器版。

前言

RStudio 在群晖上安装本身非常简单,难点在于权限和身份,按官网提供的方式安装,会存在登录不成功的情况,表现为当你用默认用户 rstudio 登录,会显示 Error: Incorrect or invalid username/password,即便你通过环境变量 DEFAULT_USER 修改用户也无济于事

老苏发现问题可能出在登录 SSH 的用户上,因为老苏习惯用 root 登录群晖,导致容器启动时,进入了 rootless 模式,所以默认用户 rstudio 已经被删除了

如果用其他用户,在群晖中除了使用 sudo,似乎又没有足够的权限来访问 Docker 守护进程的 Unix 域套接字文件 /var/run/docker.sock,会显示下面的错误

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/create?name=rstudio": dial unix /var/run/docker.sock: connect: permission denied.

而当你使用 sudo后,容器还是会进入了 rootless 模式,所以老苏姑且认为,在群晖上安装的 RStudio 服务器版,可能只能使用 root 用户登录,而不能使用默认用户 rstudio,或者自己设定的其他用户

当然,最好的办法还是,当遇到登录失败时,进日志看看容器工作在什么模式下

在这里插入图片描述

  • rootless 模式:默认用户名为 root
  • rootless 模式:默认用户名为 rstudio

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 rstudio ,选择第一个 rocker/rstudio,版本选择 latest

本文写作时, latest 版本对应为 4.3.2

在这里插入图片描述

docker 文件夹中,创建一个新文件夹 rstudio,并在其中建两个子文件夹 configworkspace

文件夹装载路径说明
docker/rstudio/config/home/rstudio/.config/rstudio存放设置
docker/rstudio/workspace/home/rstudio/workspace存放代码

在这里插入图片描述

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
87888787

在这里插入图片描述

环境

可变
TZ设置时区,默认值为 Etc/UTC
PASSWORD设置用户密码

更多环境变量请参考官方的文档:https://rocker-project.org/images/versioned/rstudio.html#environment-variables

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 rstudio 及子目录
mkdir -p /volume1/docker/rstudio/{config,workspace}# 进入 rstudio 目录
cd /volume1/docker/rstudio# 运行容器
docker run -d \--restart unless-stopped \--name rstudio \-p 8788:8787 \-v $(pwd)/config:/home/rstudio/.config/rstudio \-v $(pwd)/workspace:/home/rstudio/workspace \-e TZ=Asia/Shanghai \-e PASSWORD=123456 \rocker/rstudio

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'services:rstudio:image: rocker/rstudiocontainer_name: rstudiorestart: unless-stoppedports:- 8788:8787volumes:- ./config:/home/rstudio/.config/rstudio- ./workspace:/home/rstudio/workspaceenvironment:- TZ=Asia/Shanghai- PASSWORD=123456

然后执行下面的命令

# 新建文件夹 rstudio 及子目录
mkdir -p /volume1/docker/rstudio/{config,workspace}# 进入 rstudio 目录
cd /volume1/docker/rstudio# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8788 就能看到登录界面

在这里插入图片描述

用默认用户:rstudio,大概率会遇到登录失败,显示 Error: Incorrect or invalid username/password

密码就是我们环境变量 PASSWORD 中设定的值

在这里插入图片描述

如果日志中显示容器工作在 rootless,用户需改为 root,密码依然是我们环境变量 PASSWORD 中设定的值

在这里插入图片描述

现在可以开始使用了

参考文档

rocker-org/rocker-versioned2: Run current & prior versions of R using docker. rocker/r-ver, rocker/rstudio, rocker/shiny, rocker/tidyverse, and so on.
地址:https://github.com/rocker-org/rocker-versioned2

Rocker Project - The Rocker Project
地址:https://rocker-project.org/

Administration Guide - PAM Authentication
地址:https://docs.posit.co/ide/server-pro/authenticating_users/pam_authentication.html

Running RStudio Server with Docker - Dave Tang’s blog
地址:https://davetang.org/muse/2021/04/24/running-rstudio-server-with-docker/

这篇关于在群晖上安装RStudio服务器版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/616259

相关文章

python管理工具之conda安装部署及使用详解

《python管理工具之conda安装部署及使用详解》这篇文章详细介绍了如何安装和使用conda来管理Python环境,它涵盖了从安装部署、镜像源配置到具体的conda使用方法,包括创建、激活、安装包... 目录pytpshheraerUhon管理工具:conda部署+使用一、安装部署1、 下载2、 安装3

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

mysql-8.0.30压缩包版安装和配置MySQL环境过程

《mysql-8.0.30压缩包版安装和配置MySQL环境过程》该文章介绍了如何在Windows系统中下载、安装和配置MySQL数据库,包括下载地址、解压文件、创建和配置my.ini文件、设置环境变量... 目录压缩包安装配置下载配置环境变量下载和初始化总结压缩包安装配置下载下载地址:https://d

LinuxMint怎么安装? Linux Mint22下载安装图文教程

《LinuxMint怎么安装?LinuxMint22下载安装图文教程》LinuxMint22发布以后,有很多新功能,很多朋友想要下载并安装,该怎么操作呢?下面我们就来看看详细安装指南... linux Mint 是一款基于 Ubuntu 的流行发行版,凭借其现代、精致、易于使用的特性,深受小伙伴们所喜爱。对

Linux(Centos7)安装Mysql/Redis/MinIO方式

《Linux(Centos7)安装Mysql/Redis/MinIO方式》文章总结:介绍了如何安装MySQL和Redis,以及如何配置它们为开机自启,还详细讲解了如何安装MinIO,包括配置Syste... 目录安装mysql安装Redis安装MinIO总结安装Mysql安装Redis搜索Red

python安装完成后可以进行的后续步骤和注意事项小结

《python安装完成后可以进行的后续步骤和注意事项小结》本文详细介绍了安装Python3后的后续步骤,包括验证安装、配置环境、安装包、创建和运行脚本,以及使用虚拟环境,还强调了注意事项,如系统更新、... 目录验证安装配置环境(可选)安装python包创建和运行Python脚本虚拟环境(可选)注意事项安装

gradle安装和环境配置全过程

《gradle安装和环境配置全过程》本文介绍了如何安装和配置Gradle环境,包括下载Gradle、配置环境变量、测试Gradle以及在IntelliJIDEA中配置Gradle... 目录gradle安装和环境配置1 下载GRADLE2 环境变量配置3 测试gradle4 设置gradle初始化文件5 i

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下