如何在Ubuntu 20.04 LTS上安装Ruby on Rails

如何在Ubuntu 20.04 LTS上安装Ruby on Rails

Ruby on Rails(RoR)是一个开放源代码的Web应用程序框架,根据MIT许可证发布。它是遵循MVC(模型-视图-控制器)概念的服务器端Web应用程序框架。

Rails为数据库,Web服务和网页提供默认结构。 3000多个开发人员为Rails框架贡献了代码,并且有许多基于Rails的知名应用程序,例如Github,Airbnb,Soundcloud等。

在本教程中,我们将向您展示如何在最新的Ubuntu 20.04 FocalFossa上安装Ruby on Rails。本指南将涵盖一些主题,包括RVM Ruby版本管理器的安装,PostgreSQL数据库服务器,以及使用Ruby on Rails启动新项目的指南。

先决条件

在本指南中,我们将使用具有2GB RAM,25GB可用磁盘空间和2个CPU的Ubuntu 20.04 FocalFossa。另外,您必须具有root特权。

我们要做什么?

  • 安装RVM Ruby版本管理器
  • 安装和配置Ruby
  • 安装Nodejs和Yarn
  • 更新RubyGem软件包管理器
  • 安装Ruby on Rails最新版本
  • 安装和配置PostgreSQL数据库
  • 使用PostgreSQL数据库启动第一个Ruby on Rails项目
  • 使用Ruby on Rails创建简单的CRUD

第1步-安装RVM Ruby版本管理器

RVM或Ruby Version Manager是基于Bash和Ruby的命令行工具,用于管理ruby安装。 RVM允许您在一个系统上安装和配置多个ruby版本。

在第一步中,我们将使用官方安装程序脚本安装RVM。

使用以下gpg命令导入RVM的GPG密钥。

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 
7D2BAF1CF37B13E2069D6956105BD0E739499BDB

下载RVM安装程序脚本并安装RVM。

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

该命令将自动安装所需的软件包,并安装Ruby 2.7版本。

安装RVM Ruby版本管理器

完成所有安装后,使用以下命令将RVM加载到系统中。

source /usr/local/rvm/scripts/rvm

结果,您现在可以使用“ rvm”命令。

接下来,将RVM更新到最新的稳定版本,然后将root用户添加到rvm组。

rvm get stable --autolibs=enable
usermod -a -G rvm root

之后,使用以下命令检查rvm版本。

rvm version

您将获得rvm Ruby版本管理器的最新版本。

结果,已在Ubuntu 20.04上完成RVM Ruby版本管理器的安装。

第2步-安装和配置Ruby

在本教程中,我们将安装Ruby on Rails安装的最新Ruby版本。Advertisements.banner-1{text-align:center; padding-top:10pximportant; padding-bottom:10pximportant; padding-left:0pximportant; padding-right:0pximportant; width:100%important; box-sizing:border-boximportant; background -color:#eeeeeeimportant; border:1px实心#dfdfdf}

使用下面的rvm命令安装Ruby 2.7.1。

rvm install ruby-2.7.1

完成所有安装后,将Ruby 2.7.1设置为系统上的默认Ruby版本。

rvm --default use ruby-2.7.1

现在,使用以下命令检查Ruby版本。

ruby --version

结果,在Ubuntu 20.04上使用rvm的Ruby 2.7.1的安装已完成。

使用RVM安装RubyAdvertisements.large-leaderboard-2 {text-align:center; padding-top:10pximportant; padding-bottom:10pximportant; padding-left:0pximportant; padding-right:0pximportant; width:100%important; box-sizing:border-boximportant; background -color:#eeeeeeimportant; border:1px实心#dfdfdf}

第3步-安装Nodejs和Yarn

对于Ruby on Rails,我们需要JavaScript运行时来在Rails资产管道上编译Ruby。在本指南中,我们将使用Nodejs和Yarn程序包管理器,可以从Nodesource存储库中安装它。

首先,使用以下命令安装一些软件包依赖项。

sudo apt install gcc g++ make

现在添加Nodejs Nodesource存储库。

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

然后添加GPG密钥和Yarn程序包管理器的存储库。

curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

之后,更新系统上所有可用的存储库,并使用下面的apt命令安装Nodejs和Yarn软件包管理器。

sudo apt update
sudo apt install yarn nodejs

安装Nodejs和Yarn包管理器

一旦完成所有安装,请使用以下命令检查Nodejs版本。

node --version

现在,您将在系统上安装Nodejs’v14.3.0’。

接下来,检查Yarn程序包管理器版本。

yarn --version

然后您将在系统上安装Yarn’1.22.4’。Advertisements.leader-1{text-align:center; padding-top:10pximportant; padding-bottom:10pximportant; padding-left:0pximportant; padding-right:0pximportant; width:100%important; box-sizing:border-boximportant; background -color:#eeeeeeimportant; border:1px实心#dfdfdf}

结果,用于Ruby on Rails的Nodejs和Yarn软件包管理器的安装已完成。

步骤4-更新RubyGem软件包管理器

RubyGems是Ruby软件包管理器,随附gem命令行工具。当我们在系统上安装Ruby时,它会自动安装。

要将RubyGem更新到最新版本,请运行以下命令。

gem update --system

您将收到以下成功消息。

Updating rubygems-update
Fetching rubygems-update-3.1.3.gem
Successfully installed rubygems-update-3.1.3
...
RubyGems system software updated

接下来,为RubyGem’〜/ .gemrc’创建一个新配置,并使用以下命令禁用软件包文档的安装。

echo "gem: --no-document" >> ~/.gemrc

之后,使用下面的gem命令检查gem版本。

gem -v

结果,您将RubyGem更新到最新版本“ 3.1.3”。

第5步-在Rails上安装Ruby

在这一步中,我们将通过RubyGem软件包管理器安装最新版本的Ruby on Rails。

使用下面的gem命令安装Ruby on Rails。

gem install rails

一旦所有安装完成,请检查Ruby on Rails版本。

rails --version

您将在系统上安装Rails 6.0.3版本。

使用Gem安装Ruby on Rails

第6步-安装和配置PostgreSQL

在本教程中,我们将使用PostgreSQL作为Rails项目的数据库。在这一步中,我们将安装官方ubuntu存储库提供的PostgreSQL数据库服务器。

使用下面的apt命令将PostgreSQL数据库服务器安装到Ubuntu 20.04。

sudo apt install postgresql postgresql-contrib libpq-dev -y

完成所有安装后,启动PostgreSQL服务并将其添加到系统引导中。

systemctl start postgresql
systemctl enable postgresql

PostgreSQL服务已启动并正在运行。

接下来,登录到PostgreSQL shell并使用密码“ hakasepass”和特权“ createdb”和“ login”创建一个新角色“ hakase_dev”。

sudo -i -u postgres psql
create role hakase_dev with createdb login password 'hakasepass';

现在,使用以下查询列出PostgreSQL上所有可用的用户。

du

您将在PostgreSQL列表用户上获得名为“ hakase_dev”的角色。

显示用户ejabberd

第7步-使用PostgreSQL数据库启动新的Ruby on Rails项目

默认情况下,Ruby on Rails使用SQLite作为默认数据库。在本指南中,我们将使用PostgreSQL数据库启动一个新的Rails项目。

使用以下“ rails”命令使用默认数据库PostgreSQL创建一个新项目“ hakaseapp”。Advertisements.large-mobile-banner-1{text-align:center; padding-top:10pximportant; padding-bottom:10pximportant; padding-left:0pximportant; padding-right:0pximportant; width:100%important; box-sizing:border-boximportant; background -color:#eeeeeeimportant; border:1px solid #dfdfdf} Advertisements.large-mobile-banner-1 {text-align:center; padding-top:10pximportant; padding-bottom:10pximportant; padding-left:0pximportant; padding-right:0pximportant; width:100%important; box-sizing:border-boximportant; background -color:#eeeeeeimportant; border:1px实心#dfdfdf}

rails new hakaseapp -d postgresql

现在您将获得项目目录“ hakaseapp”,转到项目目录并使用vim编辑器编辑数据库配置“ config / database.yml”。

cd hakaseapp/
vim config/database.yml

在开发部分中,添加数据库配置,如下所示。

  host: localhost
  port: 5432
  username: hakase_dev
  password: hakasepass

转到测试部分,然后添加PostgreSQL数据库配置,如下所示。

  host: localhost
  port: 5432
  username: hakase_dev
  password: hakasepass

保存并关闭。

接下来,运行下面的rails命令为我们的Rails项目生成并迁移数据库,并确保没有错误。

rails db:setup
rails db:migrate

Ruby on Rails数据库迁移

完成所有设置后,请使用以下命令启动默认的puma rails Web服务器。

rails s -b 0.0.0.0 -p 8080

“ hakaseapp”将在端口为“ 8080”的公共IP地址上运行。

运行Ruby on Rails项目

现在,打开您的Web浏览器,并在地址栏上输入带有端口“ 8080”的服务器IP地址。

http://10.5.5.32:8080/

您将获得Ruby on Rails的默认index.html页面。

Ruby on Rails默认index.html

结果,创建了Ruby on Rails的第一个项目。

第8步-使用Rails支架创建简单的CRUD

在这一步中,我们将使用Ruby on Rails和PostgreSQL数据库创建一个新的简单CRUD应用程序。

如下使用ruby scaffold命令生成简单的CRUD应用程序。

rails g scaffold Post title:string body:text

之后,使用以下命令迁移数据库。

rake db:migrate

使用Rails支架创建简单的CRUD

确保没有错误,然后再次运行puma服务器。

rails s -b 0.0.0.0 -p 8080

返回您的Web浏览器,并在端口“ / posts”之后键入端口为“ 8080”的服务器IP地址。

http://10.5.5.32:8080/帖子

创建一个新帖子,然后键入您的标题和正文,您将得到如下结果。

Ruby on Rails简单CRUD

结果,使用Rails支架创建了带有PostgreSQL数据库的简单CRUD应用程序。

最后,在Ubuntu 20.04上使用PostgreSQL数据库的Ruby on Rails的安装和配置已成功完成。

资讯来源:由0x资讯编译自HOWTOFORGE,版权归作者所有,未经许可,不得转载
你可能还喜欢