Ruby On Rails +CentOS 7.9 環境搭建Web應用程式 教程
最近接觸了一個專案是使用Ruby 語言開發的
首次接觸Ruby 語言開發的Web 應用。
使用Vmware WorkStation 搭建了一臺 CentOS 7.9 然後在這臺虛擬機器進行環境的搭建: 基本成功跑通。
為了讓各位兄弟少踩坑, 特地寫一篇文章 記錄下 整個踩坑的經過和歷程。
準備工作:
一臺Linux 虛擬機器 CentOS 7.9
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core) 配置(雙核, 2G記憶體)
1.伺服器 環境 Centos 7 最小化安裝 後
通過設定網絡卡配置檔案: 定義一下內網IP 我這裡使用的IP為 :192.168.4.200
宿主機 物理電腦的IP為: 192.168.4.74
VM 的網路和 PC機的網路 通過橋接的方式連通:
Centos 7 更改yum源:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
先讓兩臺機可以互通。
2. 安裝工具Xshell 軟體 進行管理 虛擬機器VM 測試環境
保證 本地主機 192.168.4.74 和 192.168.4.200 互相可以ping通 的情況下 開始搭建:
具體搭建步驟如下 :
借鑑資料,需要具備的一些基礎知識: ruby On rails 目錄結構:
https://www.cnblogs.com/hyshareex/p/10218902.html
ruby gem , 還有rails 之間的關係詳解:https://www.cnblogs.com/hyshareex/p/10219309.html
Ruby-On-Rails 生成指定版本的Rails 專案 :https://www.cnblogs.com/hyshareex/p/10218833.html
1. 先安裝 rvm 環境 (rvm 簡稱 ruby 虛擬機器環境 ruby
先將VM 的環境的yum 源更換為aliyun 的源或者163 網易的yum源,
安裝 curl
yum -y install curl
安裝RVM
安裝之前先匯入key:
sudo gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
有可能會報錯, 報錯會提示要匯入 一些檔案
sudo curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
sudo curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import -
先執行上面的 命令 匯入相關的gpg2 檔案
執行 安裝命令 sudo curl -L get.rvm.io | bash -s stable --ruby
安裝完之後 再進行 source 一下 更新下環境變數的配置檔案:
sudo source ~/.bashrc
sudo source ~/.bash_profile
sudo source /etc/profile.d/rvm.sh
sudo rvm install 2.7.2
安裝完成之後 find 一下 rvm 執行命令 檢視rvm
find / -name rvm -print
下載rvm的依賴
rvm requirements
檢視rvm庫中已知的ruby 版本
rvm list known
根據檢視的版本號,選擇需要的版本。
安裝需要的ruby版本
我這邊安裝的是ruby 2.7.2
rvm install 2.7.2
使用指定版本的ruby
rvm use ruby 2.7.2
設定預設版本
rvm use 2.7.2 --default
檢視ruby 版本
ruby -v
gem install 相關的元件
下面是我安裝時遇到的坑
Gem install 報錯 error
使用rvm 安裝完成 ruby 後 安裝完成rvm 環境後 gem 也就預設安裝完成了,
ruby -v 檢視ruby 版本 gem -v 檢視 gem 的版本
gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
新增 gem的 源 為ruby-china .
安裝 Bundler
gem install bundler
安裝 rails 環境
gem install rails
安裝完成截圖
Bundler install 報錯:
根據提示是由於缺少 mysql2 的元件。
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
An error occurred while installing mysql2 (0.5.3), and Bundler
cannot continue.
Make sure that `gem install mysql2 -v '0.5.3' --source
根據報錯 提示 需要安裝 gem install mysql2 -v '0.5.3'
安裝mysql2 報錯, 是因為沒有安裝必要的mysql庫導致。
解決方法 : 安裝mysql-devel 的外掛進行解決
yum -y install mysql-devel
yum 將 mysql-devel 給安裝上。
gem install mysql2
將以上服務都安裝好之後 再bundler install
然後 通過 gitlab 將程式碼 git pull 到本地 然後 進行部署
rails的 程式碼 使用tar 命令 解壓縮
tar -zxvf aaa.tar.gz -C /root/aaa/
cd /root/aaa/ 進入到 程式碼路徑 進行啟動
rails server 啟動成功截圖:
至此 rails 專案部署完成。
Gemfile 配置檔案 :
ruby '2.7.1'
gem 'rails', '~> 6.1.4', '>= 6.1.4.1'
gem 'mysql2', '~> 0.5'
gem 'puma', '~> 5.0'
gem 'sass-rails', '>= 6'
gem 'webpacker', '~> 5.0'
gem 'turbolinks', '~> 5'
gem 'jbuilder', '~> 2.7'
博文閱讀密碼felix