如何在 Rocky Linux 8.4 上使用 PostgreSQL 安装 Ruby on Rails
在此页
- 先决条件
- 安装 RVM(Ruby 版本管理器)
- 使用 RVM 安装 Ruby
- 在 Rocky Linux 上安装 Node.js 和 Yarn
- 在 Rocky Linux 上安装 Ruby on Rails (RoR)
- 设置 PostgreSQL 用户
- 使用 PostgreSQL 数据库创建新的 Rails 项目
- 结论
Ruby on Rails 或 RoR 或 Rails 是使用 Ruby 编写的免费开源 Web 应用程序框架,具有 MIT 许可证。它是一个使用模型-视图-控制器 (MVC) 模式的全栈 Web 框架。
Rails Web 框架为数据库、Web 服务和网页提供结构。此外,Rails 还包括一些重要的工具,例如脚手架、Puma、Gems 等。
先决条件
在本教程中,您将学习如何在 Rocky Linux 系统上安装带有 PostgreSQL 数据库的 Ruby on Rails。
在开始本指南之前,请确保满足以下要求:
对于此示例,我们使用了以下机器:
- 操作系统:Rocky Linux 8.4 (Green Obisidian)
- IP 地址:192.168.1.10
在开始本指南之前,请在您的系统上完成以下 PostgreSQL 安装。
如何在 Rocky Linux 上安装 PostgreSQL
如果准备就绪,让我们开始安装 Rails。
安装 RVM(Ruby 版本管理器)
Ruby Version Manager 或 RVM 是用于在 Linux 系统上管理 Ruby 的命令行工具。使用 RVM 允许您在单个操作系统上安装多个 Ruby 版本。
首先,您将在 Rocky Linux 系统上安装 RVM,并安装特定版本的 Ruby。
1. 使用以下命令将 RVM 开发人员的 GPG 密钥导入您的系统。
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import -
2. 使用以下命令安装 RVM。
curl -L get.rvm.io | bash -s stable
RVM 安装完成后,将 RVM 配置文件加载到您的 shell。
source /etc/profile.d/rvm.sh
3. 接下来,通过执行以下命令重新加载 RVM 并安装所有依赖于 RVM 的软件包。
rvm reload
rvm requirements run
当所有包依赖项安装完成后,您就可以使用 rvm 命令安装 Ruby。

4. 执行下面的 rvm 命令以检查 RVM 存储库中可用的 Ruby 版本。
rvm list known
使用 RVM 安装 Ruby
当前版本的 Rails 需要 Ruby 2.5 或更高版本。在此步骤中,您将使用 RVM 工具安装 Ruby 3.0。
1. 执行下面的 rvm 命令安装最新版本的 Ruby。
rvm install ruby
安装将需要一些时间,具体取决于您的连接和系统。

2. Ruby 安装完成后,使用以下命令进行验证。
使用 rvm 命令检查本地机器上安装的 Ruby。
rvm list
使用以下命令检查 Ruby 的版本。
ruby --version
您将看到如下所示的输出 ruby 3.0.0。

在 Rocky Linux 上安装 Node.js 和 Yarn
Rails Web 框架使用 HTML、CSS 和 JavaScript 作为用户界面。 Rails 需要 Node.js 和 yarn 包来管理 JavaScript 应用程序。
在此步骤中,您将从官方 Rocky Linux 存储库安装 Node.js,并使用节点包管理器 (NPM) 安装 Yarn。
1. 在安装 Node.js 包之前,执行以下命令启用 Node.js v14 存储库。
sudo dnf module enable nodejs:14
输入 y 并按 Enter 确认。

2. 现在使用下面的 DNF 命令安装 Node.js 和 npm。
sudo dnf install nodejs npm -y
3. 所有安装完成后,执行下面的npm 命令在系统范围内全局安装Yarn。
npm install -g yarn
4. 使用以下命令验证 Node.js 和 Yarn。
node --version
yarn --version
以下是您将获得的类似输出。
# current nodejs version
v14.17.5
# current yarn version
1.22.17
现在您已准备好在 Rocky Linux 系统上安装 Ruby on Rails。
在 Rocky Linux 上安装 Ruby on Rails (RoR)
要安装 Ruby on Rails,您可以使用命令行 gem。 Gem 命令是 Ruby 包的一部分,位于目录 /usr/local/bin 中。
1、使用gem命令前,将目录/usr/local/bin添加到\~/.bashrc上的PATH环境变量中>\ 配置。
echo "export PATH=$PATH:/usr/local/bin" >> ~/.bashrc
现在运行下面的命令来重新加载当前的 bash 环境。
source ~/.bashrc
您已准备好运行命令 gem。
2. 执行下面的 gem 命令来安装 Ruby on Rails。
gem install rails
顶部的 gem 命令将为 Rails 安装一些 RubyGems 包和 Node.js 库。
3. Rails 安装完成后,使用以下命令进行验证。
rails --version
您将看到类似如下的输出。在此示例中,当前的 Rails 版本是 6.1.x。
Rails 6.1.4.1
设置 PostgreSQL 用户
确保您已在 Rocky Linux 系统上完成 PostgreSQL 服务器安装。
现在您将为 Rails 项目安装一些额外的包依赖项并创建一个新的 PostgreSQL 用户。
1. 执行下面的 DNF 命令来安装额外的 PostgreSQL 依赖项。
sudo dnf install postgresql-devel libpq-devel -y
2. 接下来,使用下面的 psql 命令登录到 PostgreSQL shell。
sudo -u postgres psql
3. 使用以下查询创建一个新用户 appuser,权限为 CREATEDB,密码为 userpassword。
CREATE ROLE appuser WITH CREATEDB LOGIN PASSWORD 'userpassword';
4. 使用以下查询验证可用的 PostgreSQL 用户。
\du
您将在角色名称部分看到用户 appuser,如下所示。

输入 \q 并按 Enter 退出 PostgreSQL shell。
现在您已准备好使用 PostgreSQL 数据库创建一个新的 Rails 项目。
使用 PostgreSQL 数据库创建新的 Rails 项目
在此步骤中,您将使用 PostgreSQL 数据库创建一个新的 Rails 项目。
1. 创建一个新目录 /var/www,然后将您的工作目录更改到该目录中。
mkdir -p /var/www; cd /var/www
2. 使用下面的 rails 命令,使用默认数据库 PostgreSQL 创建一个新的 Rails 项目 appname。
rails new appname --database=postgresql
该命令将创建一个新目录 appname。
3. 将您的工作目录更改为 appname 并编辑数据库配置 config/database.yml。
cd appname
nano config/database.yml
在开发、测试 和生产 部分更改数据库用户名和密码。
development:
<<: *default
database: appname_development
username: appuser
password: userpassword
host: localhost
port: 5432
test:
<<: *default
database: appname_test
user: appuser
password: userpassword
host: localhost
port: 5432
production:
<<: *default
database: appname_production
username: appuser
password: userpassword
host: localhost
port: 5432
保存配置并退出。
4. 接下来,执行下面的 rails 命令为您的项目迁移 PostgreSQL 数据库。
rails db:setup
rails db:migrate

5. 现在执行以下命令来运行您的 Rails 项目。并确保使用您的服务器 IP 地址更改 IP 地址。
rails server --binding=192.168.1.10
Rails 项目正在 Development 环境中运行,端口为 3000。

6. 打开您的 Web 浏览器并在地址栏中输入端口为 3000 的服务器 IP 地址。
http://192.168.1.10:3000/
现在您将看到 Ruby on Rails 的默认索引页面,如下所示。

您已经成功地创建了一个带有 PostgreSQL 数据库的 Rails 项目。
结论
恭喜!您已经学习了在 Rocky Linux 系统上使用 PostgreSQL 数据库安装 Ruby on Rails 的基本方法。此外,您还了解了用于管理 Ruby 的 Ruby Version Manager (RVM) 的基本安装和基本用法。
对于下一步,您可能有兴趣使用 Passenger 和 Nginx 或 Apache 网络服务器部署您的 Rails 项目。