آنچه در این مقاله میخوانید
آموزش نصب Ruby on Rails با rbenv در اوبونتو 24.04
۱۱ اردیبهشت ۱۴۰۴
فریمورک Ruby on Rails یک ابزار برنامهنویسی بکاند برای توسعه برنامههای وب است، همچنین این فریمورک اوپن سورس و رایگان، برای زبان برنامهنویسی Ruby طراحی شده است. اگر میخواهید وارد دنیای وب شوید و یک اپلیکیشن با Ruby on Rails بسازید، در ابتدا باید این فریمورک را نصب کنید. در این آموزش، نحوه نصب Ruby on Rails را با ابزار کاربردی rbenv در سرور مجازی اوبونتو یاد میگیریم.
ناگفته نماند، rbenv ابزاری است که فرآیند مدیریت نسخههای مختلف Ruby را بهشکلی ساده و بدون دردسر انجام میدهد. با rbenv میتوانید نسخههای مورد نیاز Ruby خود را به صورت ایزوله برای هر پروژه تنظیم کنید و از ایجاد مشکلات ناسازگاری نسخهها در تیم جلوگیری نمایید. همچنین این ابزار کمک میکند تا تیم توسعهتان همیشه از نسخهای یکسان برای پروژهها استفاده کند.
حالا که با مزایای rbenv نیز آشنا شدیم، وقتش رسیده که نصب را شروع کنیم. تا پایان مقاله همراه ما باشید.
در ادامه بخوانید:
- پیشنیازها
- مرحله اول: نصب rbenv و پکیجهای مورد نیاز Ruby
- مرحله دوم: نصب Ruby با ruby-build
- مرحله سوم: کار با Gemها
- مرحله چهارم: نصب Rails
- مرحله پنجم: بهروزرسانی rbenv
- مرحله ششم: پاکسازی نسخههای اضافی Ruby
- مرحله هفتم: حذف کامل rbenv (در صورت نیاز)
- جمعبندی
- سوالات متداول

پیشنیازها
قبل از شروع این آموزش، باید یک کاربر معمولی (non-root) با دسترسی sudo، در سرور مجازی اوبونتو خود تنظیم کرده باشید. برای یادگیری نحوه تنظیم حساب کاربری معمولی، میتوانید به مقاله نحوه راهاندازی اولیه سرور مجازی با اوبونتو Ubuntu مراجعه کنید.
علاوه براین باید Node.js را با روی سرور مجازی اوبونتو نصب کرده باشید. برای یادگیری نحوه نصب، مقاله نحوه نصب Node.js روی سرور مجازی اوبونتو Ubuntu، را مطالعه کنید. برخی از قابلیتهای Rails مانند Asset Pipeline برای اجرا به یک JavaScript Runtime نیاز دارند، و Node.js این نقش را بهخوبی ایفا میکند.
زمانی که حساب کاربری معمولی خود را تنظیم کردید، به عنوان کاربر non-root وارد شوید تا مراحل زیر را انجام دهید:
مرحله اول: نصب rbenv و پکیجهای مورد نیاز Ruby
برای نصب درست Ruby، ابتدا باید چند پکیج را از طریق دستور apt نصب کنید. پس از آن بهراحتی میتوانید با ابزار rbenv نسخههای مختلف Ruby را نصب و مدیریت کنید.
بنابراین باید لیست پکیجها را آپدیت کنید:
sudo apt update
حالا باید پکیجهایی که برای نصب Ruby نیاز دارید را با دستور زیر نصب کنید:
sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev
بعد از نصب پکیجها، حالا باید خود rbenv را نصب کنید، برای اینکار مانند زیر، از دستور curl
استفاده کنید تا اسکریپت نصب را از گیتهاب بگیرید و مستقیم به bash ارسال کنید تا ابزار rbenv نصب شود.
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/HEAD/bin/rbenv-installer | bash
بعد از اجرای دستور بالا، باید مسیر ~/.rbenv/bin
را به متغیر PATH
اضافه کنید تا بتوانید از ابزار خط فرمان rbenv استفاده کنید. برای اینکار باید فایل ~/.bashrc
را ویرایش کنید تا این تغییرات برای ورودیهای بعدی به ترمینال نیز اعمال شود.
دستور زیر را اجرا کنید:
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
سپس، دستور زیر را به فایل ~/.bashrc
اضافه کنید تا rbenv بهطور خودکار بارگذاری شود:
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
حالا باید تغییرات اعمال شده در فایل ~/.bashrc
را وارد shell فعلی کنید تا تنظیمات جدید فعال و قابل استفاده شوند.
برای اینکار دستور زیر را اجرا کنید:
source ~/.bashrc
در نهایت برای اینکه مطمئن شوید rbenv درست راهاندازی شده است، از دستور type
استفاده کنید. این دستور نشان میدهد که shell دقیقا از کدام مسیر rbenv را صدا میزند و آیا همه موارد درست تنظیم شدهاند یا نه.
type rbenv
خروجی به شکل زیر:
rbenv is a function
rbenv ()
{
local command;
command="${1:-}";
if [ "$#" -gt 0 ]; then
shift;
fi;
case "$command" in
rehash | shell)
eval "$(rbenv "sh-$command" "$@")"
;;
*)
command rbenv "$command" "$@"
;;
esac
}
در این مرحله، ابزار rbenv و همچنین پلاگین ruby-build را نصب کردید.
آموزش کامل و کاربردی، ساخت برنامه Ruby on Rails روی اوبونتو 22.04 را در مقاله زیر بخوانید.
ساخت برنامه Ruby on Rails روی اوبونتو 22.04
مرحله دوم: نصب Ruby با ruby-build
اکنون که پلاگین ruby-build را نصب کردید، خیلی راحت میتوانید هر نسخهای از Ruby که نیاز دارید را فقط با یک دستور در سرور لینوکس خود نصب کنید.
در ابتدا، برای اینکه بدانید چه نسخههایی از Ruby در دسترس است، دستور زیر را وارد کنید:
rbenv install -l
همانطور که میبینید، خروجی این دستور لیستی از تمام نسخههایی که میتوانید نصب کنید را به شما نشان میدهد. از نسخههای قدیمیتر گرفته تا جدیدترین ریلیزها، همه داخل این لیست هستند.
2.7.7
3.0.5
3.1.3
3.2.0
jruby-9.4.0.0
mruby-3.1.0
picoruby-3.0.0
truffleruby-22.3.1
truffleruby+graalvm-22.3.1
Only latest stable releases for each Ruby implementation are shown.
Use 'rbenv install --list-all / -L' to show all local versions.
حالا Ruby 3.2.0 را نصب کنید:
rbenv install 3.2.0
فرایند نصب Ruby ممکن است کمی زمانبر باشد، مخصوصا اگر منابع سختافزاری زیادی درگیر باشند. بنابراین باید صبور باشید:) تا نصب کامل شود.
پس از اتمام نصب، باید نسخهای که نصب کردهاید را بهعنوان نسخه پیشفرض تنظیم کنید.
با دستور زیر:
rbenv global 3.2.0
در نهایت، برای چک کردن نسخه نصب شده Ruby، دستور زیر را اجرا کنید:
ruby -v
Output
ruby 3.2.0 (2022-12-25 revision a528908271) [x86_64-linux]
در این مرحله یک نسخه از Ruby را نصب کردید و تنظیمات پیشفرض را نیز انجام دادید. در مرحله بعدی به سراغ نصب gemها و آمادهسازی محیط برای Rails خواهیم رفت.
هر آنچه باید در مورد سرور مجازی لینوکس و کاربردها و مزایایش بدانید را میتوانید در مقاله زیر بخوانید.
سرور مجازی لینوکس چیست؟
مرحله سوم: کار با Gemها
جمها (gems) روش توزیع کتابخانههای Ruby هستند. برای مدیریت این جمها از دستور gem استفاده میکنیم و با همین دستور میتوانیم Rails را نصب کنیم.
بهتر است بدانید، زمانی که یک gem را نصب میکنید، فرایند نصب، مستندات محلی (local documentation) را نیز تولید میکند. اینکار زمان زیادی به فرایند نصب اضافه میکند، بنابراین برای جلوگیری از این هدر رفت زمان، میتوانید با ایجاد یک فایل به اسم ~/.gemrc
و قراردادن تنظیمات زیر در این فایل، این ویژگی را غیرفعال کنید:
echo "gem: --no-document" > ~/.gemrc
پس از اجرای دستور بالا، باید Bundler را نصب کنید، Bundler ابزاری است که وابستگیهای gem را برای پروژهها مدیریت میکند.
برای نصب Bundler، دستور زیر را اجرا کنید:
gem install bundler
خروجی:
Fetching bundler-2.4.5.gem
Successfully installed bundler-2.4.5
1 gem installed
همچنین میتوانید برای آشنایی بیشتر با محیط و پیکربندی gemها از دستور gem env
استفاده کنید، همینطور برای مشاهده محل نصب gemها، آرگومان home را به این شکل وارد کنید:
gem env home
خروجی دریافتی:
/home/sammy/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0
اکنون که gemها تنظیم شدند، در مرحله بعدی میتوانید Rails را نصب کنید.
همین الان، بدون کمترین پیچیدگی، سرور مجازی خودتون رو در کمتر از ۳۰ ثانیه، راهاندازی کنید.
✅ عملکرد پایدار ✅ ترافیک نامحدود ✅ هزینه بهصرفه
خرید سرور مجازی اوبونتو
مرحله چهارم: نصب Rails
برای نصب Rails از دستور gem install
همراه با پارامتر -v
برای مشخص کردن نسخه آن استفاده کنید. در این آموزش از لیارا، از نسخه 7.0.4
استفاده میکنیم:
gem install rails -v 7.0.4
دستور gem، جم مورد نظر شما و تمامی وابستگیهای آنرا به صورت خودکار نصب میکند. Rails یک فریمورک پیچیده است، بنابراین وابستگیهای زیادی دارد، فرایند نصب کمی زمانبر خواهد بود.
در نهایت پس از پایان نصب، پیام موفقیت نصب Rails را دریافت خواهید کرد.
Output
...
Successfully installed rails-7.0.4
35 gems installed
توجه: اگر میخواهید نسخهای متفاوت از Rails را نصب کنید. با جستجو، نسخههای معتبر Rails را لیست کنید. دستور زیر یک لیست از نسخههای ممکن را به شما نشان میدهد:
gem search '^rails$' --all
gem install rails -v 4.2.7
اگر هم بخواهید آخرین نسخه را نصب کنید، دستور زیر را اجرا کنید:
gem install rails
ابزار rbenv با یک دایرکتوری بهنام shims کار میکند، که به فایلهای مربوط به نسخه Ruby فعلی اشاره دارند. وقتی دستور rehash
را اجرا میکنید، ابزار rbenv، شیمها را در این دایرکتوری بهروزرسانی میکند و مطمئن میشود که دستورات Ruby در تمام نسخههای نصب شده Ruby درست کار میکنند.
هر زمان که، نسخه جدیدی از Ruby یا یک gem مثل Rails نصب کردید که دستورات جدیدی به سیستم اضافه میکند، کافی است دستور زیر را اجرا کنید:
rbenv rehash
برای بررسی اینکه آیا Rails به درستی نصب شده است یا نه، میتوانید نسخهی نصب شده را با دستور زیر، مشاهده کنید:
Verify that Rails has been installed properly by printing its version with the following command:
مرحله پنجم: بهروزرسانی rbenv
از آنجا که ابزار rbenv را بهصورت دستی با استفاده از Git نصب کردید، میتوانید هر زمانی که نیاز داشتید، نسخه جدیدتری از rbenv را نصب کنید. برای اینکار کافی است دستور زیر را در دایرکتوری ~/.rbenv
اجرا کنید:
cd ~/.rbenv
git pull
اینکار تضمین میکند که از جدیدترین نسخه موجود rbenv استفاده میکنید.
سرور مجازی دبیان بدون پیچیدگی، در چند ثانیه آماده استفاده است. همین الان با سادگی تمام، شروع به کار با آن کنید!
✅ عملکرد پایدار ✅ ترافیک نامحدود ✅ هزینه بهصرفه
خرید سرور مجازی دبیان
مرحله ششم: پاکسازی نسخههای اضافی Ruby
با دانلود نسخههای بیشتر از Ruby، ممکن است نسخههای زیادی در دایرکتوری ~/.rbenv/versions
شما انباشته شود، برای حذف نسخههای قبلی، میتوانید از دستور uninstall
استفاده کنید.
برای حذف نسخه 3.2.0 Ruby دستور زیر را اجرا کنید:
rbenv uninstall 3.2.0
تمام نسخههایی که استفاده نمیکنید را به اینصورت حذف کنید.
مرحله هفتم: حذف کامل rbenv (در صورت نیاز)
اگر این ابزار را روی سرور مجازی لینوکس نصب کرده بودید و به هر دلیلی تصمیم گرفتید از rbenv استفاده نکنید، میتوانید آنرا پاک کنید. برای شروع، فایل ~/.bashrc
را با ویرایشگر مورد علاقهتان باز کنید، اینجا ما از nano استفاده کردهایم.
nano ~/.bashrc
درون فایل ~/.bashrc
باید دو خط زیر را پیدا کرده و آنها را حذف کنید:
...
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
بعد از اینکه دو خط را از فایل حذف کردید، حالا میتوانید خود rbenv و تمام نسخههای Ruby نصب شده را با دستور زیر پاک کنید:
rm -rf `rbenv root`
برای اینکه تغییراتی که اعمال کردید روی فایل ~/.bashrc
بهطور کامل اثر بگذارد، کافی است یکبار از سیستم خارج شده و مجدد وارد شوید. اینکار باعث میشود فایلهای پیکربندی دوباره بارگذاری شوند.
اگر نمیدانید تفاوت توزیع اوبونتو و دبیان چیست؟ و چه ویژگیهایی دارند، مقالهی زیر را بخوانید.
مقایسه اوبونتو و دبیان
جمعبندی
تبریک:) شما اکنون فرایند نصب فریمورک Ruby on Rails و تمام پیکربندیهای لازم را روی سرور لینوکس انجام دادهاید. از اینجا به بعد، میتوانید وارد دنیای برنامهنویسی وب با Ruby شوید و پروژههای مختلفی را شروع کنید.
سوالات متداول
چرا باید از rbenv استفاده کنم؟
چون کنترل نسخههای مختلف Ruby را ساده میکند و با پروژههای مختلف، راحتتر میتوانید کار کنید.
بعد از نصب Rails، چطوری یک پروژه جدید بسازم؟
کافیست دستور rails new myapp
را داخل ترمینال اجرا کنید.
فرق rbenv با نصب مستقیم Ruby چیست؟
rbenv به شما اجازه میدهد چند نسخه Ruby کنار هم داشته باشید و راحت بین آنها جابجا شوید.
بعد از نصب Rails، چطور مطمئن شوم که درست نصب شده است؟
کافی است در ترمینال بزنید: rails -v
اگه نسخه Rails را نشان داد، یعنی درست نصب شده است.
اگه بخواهم Rails یا Ruby را حذف کنم، باید از کجا شروع کنم؟
اول با gem uninstall rails
یا rbenv uninstall <version>
آنرا حذف کنید، سپس فولدر .rbenv
را از هوم دایرکتوری پاک کنید.