使用 NGINX 部署 ROR 應(yīng)用程序
教程目標(biāo):使用 NGINX 部署 ROR 應(yīng)用程序
不知道如何使用 NGINX 部署 ROR App?本教程適合您!我們會(huì)討論
安裝 rvm
配置紅寶石
使用 NGINX 作為反向代理,使用 Phusion Passenger 模塊緩沖用戶和 Rails 應(yīng)用程序之間的請(qǐng)求和響應(yīng)。
安裝 RVM
RVM或 Ruby Version Manager 是一個(gè)命令行工具,可讓您輕松安裝、管理和使用多個(gè) ruby 環(huán)境,從解釋器到 gem 集。
如果它們不存在,您需要安裝 software-properties-common 添加 PPA 存儲(chǔ)庫(kù)。
添加 PPA
使用 apt-get 更新軟件包
使用以下命令安裝 rvm
完成所有安裝后,使用以下命令將 RVM 加載到系統(tǒng)中。
安裝和配置紅寶石
執(zhí)行以下命令安裝最新的穩(wěn)定版 ruby 并設(shè)置默認(rèn)的 ruby 版本。
rvm 安裝紅寶石ruby --version // 將顯示 ruby 版本紅寶石 3.0.0p0(2020-12-25 修訂版 95aff21468)[x86_64-linux]rvm -- 默認(rèn)使用 ruby-3.0.0
發(fā)展。優(yōu)化。部署。重復(fù)。
我們擁有您所需要的——敬業(yè)、技術(shù)精湛且精明的 Ruby on Rails 開(kāi)發(fā)人員。今天聯(lián)系我們以獲得最好的!立即從我們這里雇用Ruby on Rails 開(kāi)發(fā)人員!
安裝 NodeJS 和 Yarn
我們需要安裝 javascript 運(yùn)行時(shí)以在 ruby on rails 應(yīng)用程序中編譯資產(chǎn)管道。因此我們將使用 NodeJs 和 Yarn 包管理器,它們可以從 Nodesource 存儲(chǔ)庫(kù)安裝。
在安裝 Yarn 和 NodeJs 之前,先安裝一些依賴
添加 NodeJs NodeSource 存儲(chǔ)庫(kù)。
添加 Yarn 包管理器的 GPG 密鑰和存儲(chǔ)庫(kù)。
卷曲-sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key 添加 -echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
使用 apt 命令更新所有可用的存儲(chǔ)庫(kù)并安裝 nodejs 和 yarn。
您可以使用以下命令檢查節(jié)點(diǎn)和紗線的版本。
安裝導(dǎo)軌
在這一步中,我們將通過(guò) RubyGem 包管理器安裝最新版本的 Rails。但在安裝 gems 之前,我們應(yīng)該使用以下命令更新 RubyGem。
安裝最新版本的 rails。
檢查軌道版本
創(chuàng)建新的 Rails 應(yīng)用程序
使用 rails創(chuàng)建新的 rails 項(xiàng)目“< app_name >”。
安裝 Passenger 和 NGINX
安裝最新版本的乘客。
使用 rvmsudo 運(yùn)行 Passenger Nginx 模塊安裝程序并按照屏幕上的說(shuō)明進(jìn)行操作。
如果出現(xiàn)錯(cuò)誤,請(qǐng)運(yùn)行以下命令之一;之后重新運(yùn)行上一個(gè)命令。
安裝后,請(qǐng)運(yùn)行以下命令驗(yàn)證安裝
所有檢查都應(yīng)該通過(guò)。如果任何檢查未通過(guò),請(qǐng)按照屏幕上的建議進(jìn)行操作。
最后,檢查 Nginx 是否啟動(dòng)了 Passenger 核心進(jìn)程
您應(yīng)該看到 Nginx 進(jìn)程以及 Passenger 進(jìn)程,如下所示。
文件位置
請(qǐng)記住,在某個(gè)時(shí)候,rvmsudo passenger-install-nginx-module問(wèn)你 Nginx 安裝到哪里,問(wèn)你要“前綴”,對(duì)吧?前綴是安裝這個(gè)新 Nginx 的目錄。默認(rèn)情況下,安裝程序選擇目錄 /opt/nginx。在本節(jié)中,我們假設(shè)您安裝了默認(rèn)前綴目錄。如果您指定了不同的前綴,只需替換/選擇/nginx與實(shí)際目錄。
Nginx的配置文件位于/選擇/nginx/conf. 它的日志文件位于 /opt/nginx/logs 中。
進(jìn)入下一節(jié)如何使用 NGINX 部署 ROR 應(yīng)用程序并開(kāi)始配置 NGINX。
配置 NGINX
使用文本編輯器打開(kāi) nginx.conf
worker_processes 1;事件{
worker_connections 1024;}HTTP {
passenger_root /home/sanket/.rvm/gems/ruby-3.0.0/gems/passenger-6.0.13;
passenger_ruby /home/sanket/.rvm/gems/ruby-3.0.0/wrappers/ruby;
包括 mime.types;
default_type 應(yīng)用程序/八位字節(jié)流;
發(fā)送文件;
keepalive_timeout 65;
服務(wù)器 {
聽(tīng)80;
服務(wù)器名稱(chēng)本地主機(jī);
地點(diǎn) / {
根 HTML;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
根 HTML;
}
}}
將代碼片段 server { … } 替換為以下片段
服務(wù)器 {聽(tīng) 80 默認(rèn)服務(wù)器;服務(wù)器名稱(chēng)本地主機(jī);## 你可以添加你的ippassenger_enabled 開(kāi)啟;passenger_app_env 開(kāi)發(fā);## 你可以在這里添加你的環(huán)境根/民眾;}
啟動(dòng) NGINX
運(yùn)行以下命令啟動(dòng) Nginx。
停止 NGINX
運(yùn)行以下命令停止 Nginx。
結(jié)論
我希望登陸本教程的目的對(duì)您有所幫助。您渴望了解 ROR 嗎?您想深入了解 ROR 的高級(jí)知識(shí)嗎?那么 ROR 教程頁(yè)面適合您!歡迎訪問(wèn)更多此類(lèi)Ruby on Rails 教程并探索 ROR 的基礎(chǔ)知識(shí)。如果您有任何問(wèn)題、反饋或建議,請(qǐng)毫不猶豫地給我們回信。
言鼎科技主做軟件開(kāi)發(fā),微信小程序,網(wǎng)站開(kāi)發(fā),軟件外包,手機(jī)APP開(kāi)發(fā)。如有需要記得聯(lián)系我們!