Linux 配置 Ruby on Rails 6 开发环境

402 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第23天,点击查看活动详情

一、安装 Rails

Ruby on Rails 是一个完全基于 Ruby 的 Web 开发框架,因此安装 Ruby on Rails 的前提是 Ruby 已经安装。

使用 gem 命令来安装 Ruby on Rails,-v 参数可以指定安装的 Rails 版本,默认安装最新版本

gem install rails -v 6.0.5

image.png

查看 Rails 版本

rails -v

image.png

使用 rails new 命令创建一个 Rails 项目

rails new blog

image.png bundle install是安装rails项目所需要的gems的组件

image.png 项目创建完成之后提示需要安装 node.js

安装 node

首先通过 wget 下载并解压压缩包

# 下载压缩包
wget https://nodejs.org/dist/v16.14.2/node-v16.14.2-linux-x64.tar.xz

# 解压缩
tar xvf node-v16.14.2-linux-x64.tar.xz

进入到bin目录下查看版本

image.png

接下来需要配置环境变量,将解压后的包移动到 /usr/local 目录下

mv node-v16.14.2-linux-x64 /usr/local/nodejs

添加环境变量并重启

vim /etc/profile

source /etc/profile

添加以下内容 image.png

任意目录下再次查看 node 的版本 image.png

再次通过 rails new 创建 blog 项目

image.png

提示 yarn 没有安装

安装 Yarn

通过命令下载并安装 yarn

wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo

yum -y install yarn

image.png

查看 yarn 版本

image.png

再次创建 blog项目 image.png

创建成功。进入项目,并通过 rails server 启动项目

image.png

通过 --help 查看启动时可以选择的一些参数 image.png

执行如下启动命令

rails server -b '0.0.0.0'

image.png

访问项目首页 image.png 提示 sqlite3 版本过低

更新 sqlite

首先下载 sqlite3 的包

wget -O sqlite-3350500.tar.gz   https://www.sqlite.org/2021/sqlite-autoconf-3350500.tar.gz --no-check-certificate

image.png

# 解压
tar -zxvf sqlite-3350500.tar.gz
# 解压文件重命名为sqlite
mv sqlite-autoconf-3350500/ sqlite3/

#检测安装路径
./configure --prefix=/usr/local/sqlite3

#编译及安装
make && make install

替换旧版本的 sqlite3

mv /usr/bin/sqlite3  /usr/bin/sqlite3_old

ln -s /usr/local/sqlite3/bin/sqlite3   /usr/bin/sqlite3

echo "/usr/local/sqlite3/lib" > /etc/ld.so.conf.d/sqlite3.conf

ldconfig

查看 sqlite3 版本,已满足 Rails 项目启动的条件

image.png

再次启动项目 image.png 项目启动成功

二、切换 MySQL 数据库

Rails 默认使用 sqlite3 作为数据库,而如果想要创建以 MySQL 为数据库的项目需要添加 -d 参数

rails new blog-mysql -d mysql

image.png

提示需要安装 MySQL 的依赖

gem install mysql2 -v '0.5.4'

image.png

安转 mysql2 报错,提示需要先安装 mysql-devel

yum install mysql-devel

image.png

再次安装 mysql2 image.png

再次创建以mysql为数据库的 rails 项目

rails new blog-mysql -d mysql

image.png

再次启动项目

image.png

在项目的 config/database.yml 文件中配置 mysql 的连接信息

image.png

保存之后,再次启动 image.png