当前位置: 首页 > article >正文

Ubuntu18.04安装rvm、ruby2.6.5和rails5.2.6

系统环境:Ubuntu 18.04

一、安装前准备

1.

sudo apt update

2.

sudo apt upgrade

如果提示abort,忽略。

3.

sudo apt install sqlite3 gnupg curl git libpq-dev

二、安装rvm ruby版本管理器

1.切换管理员模式

sudo su

2.安装软件签名公钥

gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

查看是否已安装

gpg --list-keys 409B6B1796C275462A1703113804BB82D39DC0E3
gpg --list-keys 7D2BAF1CF37B13E2069D6956105BD0E739499BDB


3.安装rvm和ruby的最新版本

不需要最新版本,去掉命令- -ruby

curl -sSL https://get.rvm.io | bash -s stable –ruby

“Thanks for installing RVM”表示rvm安装成功,且安装了最新的ruby版本(ruby-3.0.0)

4.启动rvm,查看rvm版本

source /usr/local/rvm/scripts/rvm
rvm -v


5.rvm更新至最新最稳定的状态

rvm get stable --autolibs=enable

6.查看所有ruby版本

rvm list known

三、安装ruby2.6.5和rails5.2.6

1.安装ruby2.6.5

rvm install ruby-2.6.5

(1)设置ruby的默认版本、查看ruby的版本

rvm --default use ruby-2.6.5
ruby -v


(2)安装Nodejs

     我们需要安装nodejs作为ruby的js运行时环境;添加nodejs仓库

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -

安装nodejs

sudo apt install -y nodejs

(3)更新gem 

gem是ruby的包管理工具,在我们安装ruby的时候,他已经被自动安装上了。执行命令"gem update –system"会报错,原因是最新的rubygems需要ruby版本>=3.1.0,但是我们需要安装ruby2.6.5的。错误如下:

解决办法:安装ruby2.6.5对应的rubygems版本

wget https://rubygems.org/rubygems/rubygems-3.2.22.tgz

tar -xzvf rubygems-3.2.22.tgz

cd rubygems-3.2.22
ruby setup.rb


(4)查看gem版本  

gem -v

2.安装rails5.2.6

gem install rails -v 5.2.6

(1)查看rails是否安装成功

rails -v

cd 退出管理员模式。

(2)bundle install 出错及解决办法

注意:bundle install时会出现以下错误,原因是我们使用管理员模式安装的,涉及权限问题。

错误信息:You don't have write permissions for the /usr/local/rvm/gems/ruby-2.6.5/wrappers directory.

解决办法:

修改 RVM 目录权限

sudo chown -R $USER:$USER /usr/local/rvm/gems/ruby-2.6.5

重新运行 bundle install

bundle install

相关文章:

Ubuntu18.04安装rvm、ruby2.6.5和rails5.2.6

系统环境:Ubuntu 18.04 一、安装前准备 1. sudo apt update 2. sudo apt upgrade 如果提示abort,忽略。 3. sudo apt install sqlite3 gnupg curl git libpq-dev 二、安装rvm ruby版本管理器 1.切换管理员模式 sudo su 2.安装软件签名公钥 gpg…...

燧光 XimmerseMR SDK接入Unity

官网SDK文档连接: RhinoX Unity XR SDK 一:下载SDK 下载链接:RhinoX Unity XR SDK 二:打开Unity项目,添加Package 1、先添加XR Core Utilties包和XR Interaction Toolkit包 2、导 2、再导入下载好的燧光SDK 三&…...

罗德与施瓦茨ZNB20,矢量网络分析仪9KHz-20GHz

罗德与施瓦茨ZNB20矢量网络分析仪9KHz-20GHz R&SZNB20矢量网络分析仪 产品型号: ZNB20 产品品牌:罗德与施瓦茨 R&S 产品名称: 矢量网络分析仪 频率范围:9kHz - 20GHz R&S ZNB 矢量网络分析仪 良好的测量速度、动态范围和操作方便性&am…...

突破平面限制:低空经济激活城市土地“立体生长力”

蓄锐行:我深耕于低空经济领域,同时对IOT技术有着深入的理解,而在AI的探索性研究上,我也已迈出坚实的步伐,虽起步不久,却满怀热情与憧憬。平日里,我热衷于撰写关于低空经济的文章,分享…...

可调节图片参数,解决图片模糊及尺寸过小问题的工具

软件介绍 你是否正为图片模糊、尺寸太小而烦恼?别担心,有这样一款神器能帮你轻松解决。它能精准调节图片参数,即便原本模糊不清的图片,经它处理后也能变得高清锐利,瞬间让图片焕然一新。而且,它还具备导出…...

React 与 Vue 对比指南 - 上

React 与 Vue 对比指南 - 上 本文将展示如何在 React 和 Vue 中实现常见功能&#xff0c;从基础渲染到高级状态管理 Hello 分别使用 react 和 vue 写一个 Hello World&#xff01; react export default () > {return <div>Hello World!</div>; }vue <…...

✨2.快速了解HTML5的标签类型

✨✨HTML5 的标签类型丰富多样&#xff0c;每种类型都有其独特的功能和用途&#xff0c;以下是一些常见的 HTML5 标签类型介绍&#xff1a; &#x1f98b;结构标签 &#x1faad;<html>&#xff1a;它是 HTML 文档的根标签&#xff0c;所有其他标签都包含在这个标签内&am…...

力扣 买卖股票的最佳时机

贪心算法典型例题。 题目 做过股票交易的都知道&#xff0c;想获取最大利润&#xff0c;就得从最低点买入&#xff0c;最高点卖出。这题刚好可以用暴力&#xff0c;一个数组中找到最大的数跟最小的数&#xff0c;然后注意一下最小的数在最大的数前面即可。从一个数组中选两个数…...

【SQL】SQL多表查询

&#x1f384;概念 一般我们说的多表查询都涉及外键和父子表之间的关系。比如一对多:一般前面指的是父表后面指的是子表。 ⭐分类 一对多(多对一) 多对多 一对一 ⭐一对多 &#x1f4e2;案例&#xff1a;部门与员工的关系 &#x1f4e2;关系&#xff1a;一个部门对应多个员…...

HTML之JavaScript DOM(document)编程处理事件

HTML之JavaScript DOM&#xff08;document&#xff09;编程处理事件 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"…...

知识篇 | DeepSeek企业部署模式主要有6种

国际数据公司IDC近日发文《DeepSeek爆火的背后&#xff0c;大模型/生成式AI市场生态潜在影响引人关注》表示&#xff1a; “大模型的部署过程需同时满足高并发与低延迟的严苛要求&#xff0c;并需全面考量数据安全、隐私保障、资源弹性扩展以及系统维护等多重因素&#xff0c;D…...

uniapp中@input输入事件在修改值只有第一次有效的问题解决

在uniapp中使用输入框&#xff0c;要求输入不超过7个字&#xff0c;所以需要监听输入事件&#xff0c;当每次输入文字的时候&#xff0c;就把输入的值截断&#xff0c;取前7个值。但是在input事件中&#xff0c;重新赋值的值发生了变化&#xff0c;但是页面上的还是没有变&…...

linux环境-nginx通过nginx_upstream_check_module模块,配置服务自动检测-日志自动分割

依赖包正在审核中,通过后将在文章顶部展示,如再次编辑请到内容管理-下载类目 cd nginx源码目录(nginx-1.27.3) 在源码目录下执行一下操作,完成nginx安装和启动 1、双击执行gccCheck.sh,安装gcc化境 脚本内容如下 #!/bin/bash # 检查GCC是否安装 if ! gcc --vers…...

AI 百炼成神:线性回归,预测房价

我们开始第一个项目——线性回归:预测房价。这是一个经典的机器学习入门项目,可以帮助你理解如何使用线性回归模型来预测连续的数值。 第一个项目:线性回归预测房价 项目目标 学习线性回归的基本概念。使用历史房价数据建立一个预测模型。理解如何评估模型的性能。项目步骤…...

Linux运维篇-存储基础知识

什么是存储 用于存放数据信息的设备和介质&#xff0c;等同于计算机系统中的外部存储&#xff0c;是一个完整的系统。 存储的结构和趋势 存储的体系结构 当前存储的主要体系结构有三种&#xff1a; DASNASSAN 存储的发展趋势 ssd固态硬盘云存储一体化应用存储设备非结构…...

Pytorch实现论文之三元DCGAN生成RGB图像用于红外图像着色生成

简介 简介:采用了三次DCGAN单独生成单通道图像之后进行组成RGB图像放入鉴别器中检测,并在鉴别器和生成器的损失训练中采用梯度方法来提升或者降低权重。该方法将用于获得红外图像着色的生成。 论文题目:Infrared Image Colorization based on a Triplet DCGAN Architectur…...

Socket通讯协议理解及客户端服务器程序流程

Socket通讯我们可以从以下几个方面简单理解 1.Socket是网络通信中的一项重要技术&#xff0c;它提供了在网络上进行数据交换的接口。用C#、Java、C等开发语言&#xff0c;都可以开发Socket网络通信程序。 2.Socket(套接字)是计算机网络编程中的一种抽象&#xff0c;它允许不同…...

ceph部署-14版本(nautilus)-使用ceph-ansible部署实验记录

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、环境信息二、部署步骤2.1 基础环境准备2.2 各节点docker环境安装2.3 搭建互信集群2.4 下载ceph-ansible 三、配置部署文件3.1 使用本地docker3.2 配置hosts…...

vue3 + thinkphp 接入 七牛云 DeepSeek-R1/V3 流式调用和非流式调用

如何获取七牛云 Token API 密钥 https://eastern-squash-d44.notion.site/Token-API-1932c3f43aee80fa8bfafeb25f1163d8 后端 // 七牛云 DeepSeek API 地址private $deepseekUrl https://api.qnaigc.com/v1/chat/completions;private $deepseekKey 秘钥;// 流式调用public f…...

vlanif接口转发vlan

一.为什么需要VLAN 1.1 什么是VLAN&#xff1f; VLAN&#xff08;Virtual LAN&#xff09;&#xff0c;翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络&#xff0c;也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络——…...

Rook-ceph(1.92最新版)

安装前准备 #确认安装lvm2 yum install lvm2 -y #启用rbd模块 modprobe rbd cat > /etc/rc.sysinit << EOF #!/bin/bash for file in /etc/sysconfig/modules/*.modules do[ -x \$file ] && \$file done EOF cat > /etc/sysconfig/modules/rbd.modules &l…...

第2章 信息技术发展(一)

2.1 信息技术及其发展 2.1.1 计算机软硬件 计算机硬件(Computer Hardware)是指计算机系统中由电子、机械和光电元件等组成的各种物理装置的总称。 计算机软件 (Computer Software)是指计算机系统中的程序及其文档&#xff0c;程序是计算任务的处理对象和处理规则的描述; 文档…...

python学习笔记,python处理 Excel、Word、PPT 以及邮件自动化办公

文章目录 前言一、环境搭建1. 下载 Python2. 安装 Python 二、处理 Excel 文件&#xff08;openpyxl库&#xff09;三、 处理 Word 文件&#xff08;python-docx库&#xff09;四、 处理 PPT 文件&#xff08;python-pptx库&#xff09;五、 自动发送邮件&#xff08;smtplib和…...

【网络基本知识--2】

网络基本知识--2 1.主机A和主机B通过三次握手TCP连接&#xff0c;过程是&#xff1a; TCP三次握手连接过程如下&#xff1a; 1.客户端发送SYN(SEQx)报文发送给服务器端&#xff0c;进入SYN_SEND状态&#xff1b; 2.服务器端收到SYN报文&#xff0c;回应一个SYN(SEQy)ACK(ACKx1)…...

MoE硬件部署

文章目录 MoE硬件部署硬件需求**专家硬件映射&#xff1a;模块化计算单元****路由硬件加速&#xff1a;门控网络专用单元****内存与通信优化****能效控制策略****实例&#xff1a;假设部署Mixtral 8x7B到自研AI芯片** 资源分配硬件资源预分配&#xff08;编译时&#xff09;运行…...

摄影——曝光三要素

曝光三要素 光圈&#xff08;F&#xff09;&#xff1a;控制进光量的装置快门&#xff08;1/X&#xff09;&#xff1a;接受光线的时间感光度&#xff08;ISO&#xff09;&#xff1a;感光器件对光线的敏感程度 一、快门&#xff08;1/X&#xff09; 静物 1/125 动物 1/500 …...

DeepSeek-R1论文阅读及蒸馏模型部署

DeepSeek-R1论文阅读及蒸馏模型部署 文章目录 DeepSeek-R1论文阅读及蒸馏模型部署摘要Abstract一、DeepSeek-R1论文1. 论文摘要2. 引言3. DeepSeek-R1-Zero的方法3.1 强化学习算法3.2 奖励建模3.3 训练模版3.4 DeepSeek-R1-Zero的性能、自进化过程和顿悟时刻 4. DeepSeek-R1&am…...

一周学会Flask3 Python Web开发-post请求与参数获取

锋哥原创的Flask3 Python Web开发 Flask3视频教程&#xff1a; 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili app.route 装饰器默认只支持get请求。假如我们要让绑定的视图函数支持其他请求方式&#xff0c;我们可以在methods属性里配置…...

Python的那些事第二十五篇:高效Web开发与扩展应用实践FastAPI

FastAPI:高效Web开发与扩展应用实践 摘要 FastAPI 是一种基于 Python 的现代 Web 框架,以其高性能、自动文档生成、数据验证和异步支持等特性受到开发者的青睐。本文首先介绍了 FastAPI 的核心特性及其开发流程,然后通过实际案例探讨了其在异步编程、微服务架构、WebSocket…...

ES6模块化和CommonJs模块化区别

ES6模块化和CommonJs模块化区别 在JavaScript中&#xff0c;模块化是将代码拆分成独立的块&#xff0c;每个块可以独立封装和管理。ES6模块化和CommonJS是两种常见的模块化规范&#xff0c;它们在语法、加载方式和运行时特性上有显著差异。 语法差异 CommonJS模块使用requir…...