发布于 

Ruby on Rails: 环境搭建

简介

我的电脑以及自带 Ruby 环境如下。

1、系统版本:macOS Monterey 12.2.1

2、自带 ruby 版本:ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.x86_64-darwin21],其二进制文件在 /usr/bin/ruby 下。

3、自带 gem 版本:3.1.6

自带的 ruby 版本无法支持 rails 7.x 的版本(可以查看 Rails 要求的 Ruby 版本),我需要使用 rvmruby 版本进行控制,下面重点记录一下安装步骤和过程。

安装 Homebrew

1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

可以参考 官网 最新的安装方式。

使用 brew 安装 gitcurl 工具,安装过程中提示缺少就老老实实的安装啥就好了。

安装 RubyGems

简称为 gem 工具,macOS 会自带该工具不需要单独安装,如果没有可以使用 brew 安装。

1
2
3
> brew search gem
> If you meant "gem" specifically:
macOS provides gem as part of Ruby.

也可以去 官网 下载安装。

安装 rvm

参考:https://rvm.io/

如果是 Ubuntu,可以参考 https://github.com/rvm/ubuntu_rvm;

安装 gpg2

1
brew install gpg2 

如果安装不成功,可以安装 gpg

1
brew install gpg 

然后接着在终端执行

1
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

或者使用 gpg

1
gpg --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

最后执行

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

~/.bash_profile 中添加环境变量,记得下面这个一定要添加在文件的最后,否则每次启动命令行都需要设置一下默认的 ruby 版本。

1
2
# rvm
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

保存后在终端执行

1
2
3
source ~/.bash_profile 

source ~/.zshrc

安装 bundler

1
sudo gem install bundler

安装 ruby

1
2
3
4
5
6
7
8
9
10
11
12
1、brew update

2、rvm get master

# 指定安装版本
3、rvm install 2.7.5

# 查看已经安装的ruby
4、rvm list

# 使用默认的版本
5、rvm use ruby-2.7.5 --default

安装 rails

1
2
# 默认安装最新版本
sudo gem install rails

安装成功后,可以查看一下安装的版本

1
2
3
rails -v
# 我安装后的 rails 版本是 7.0.2.3
Rails 7.0.2.3

创建项目

1
rails new weibo --skip-bundle

其中 weibo 是项目名称,参数 --skip-bundle 可以跳过依赖库的安装,这样创建工程很快。

打开工程 weibo 下面的 Gemfile 文件,修改源地址即使用 https://gems.ruby-china.com,注意原来的 taobao 源已经停止更新了,全部放到了 ruby-china 上了。

1
2
#source "https://rubygems.org"
source "https://gems.ruby-china.com"

你在使用 source 遇到了问题,可以在 https://gems.ruby-china.com/ 上面查找答案。

1
bundle install

执行完成后,启动服务

1
rails server

打开 http://127.0.0.1:3000 可以看到默认首页。


得先从自己身上找问题


本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。

veryitman