كيفية تثبيت Ruby on Rails باستخدام rbenv على macOS

مقدمة

روبي أون ريلز هو مجموعة تطبيقات شهيرة بين المطورين الذين يسعون لإنشاء مواقع وتطبيقات ويب. لغة برمجة روبي، بالاشتراك مع إطار تطوير ريلز، يجعل تطوير التطبيقات سريعًا وفعالًا.

طريقة واحدة لتثبيت روبي وريلز هي باستخدام أداة سطر الأوامر rbenv. باستخدام rbenv، ستحصل على بيئة قوية ومتحكمة بشكل جيد لتطوير تطبيقات روبي أون ريلز الخاصة بك، مما يتيح لك تبديل نسخة روبي العاملة بسهولة حسب الحاجة.

يوفر rbenv دعمًا لتحديد الإصدارات الخاصة بالتطبيقات من روبي، ويتيح لك تغيير روبي العالمي لكل مستخدم، ويسمح لك باستخدام متغير البيئة لتجاوز إصدار روبي.

في هذا البرنامج التعليمي، ستستخدم rbenv لتثبيت وإعداد روبي أون ريلز على جهاز macOS المحلي الخاص بك.

المتطلبات الأولية

لمتابعة هذا البرنامج التعليمي، ستحتاج إلى:

الخطوة 1 — تثبيت rbenv

في هذه الخطوة، ستقوم بتثبيت rbenv والتأكد من أنه يبدأ تلقائيًا عند التمهيد. للقيام بذلك على macOS، ستستخدم هذا البرنامج التعليمي مدير الحزم Homebrew.

لتنزيل حزمة rbenv باستخدام Homebrew، قم بتشغيل الأمر التالي:

  1. brew install rbenv

سيقوم هذا بتثبيت rbenv وإضافة الإضافة [ruby-build] (https://github.com/rbenv/ruby-build). تضيف هذه الإضافة الأمر rbenv install، الذي يبسط عملية التثبيت لإصدارات Ruby الجديدة. قد يقوم هذا بتثبيت العديد من التبعيات الأخرى ويستغرق بعض الوقت.

ثم ستقوم بإضافة الأمر eval "$(rbenv init -)" إلى ملف ~/.bash_profile الخاص بك لجعل rbenv يحمل تلقائيًا عند فتحك لنافذة الطرفية. للقيام بذلك، قم بفتح ملف .bash_profile في nano أو أي محرر نص تفضله:

  1. nano .bash_profile

أضف السطر التالي إلى الملف:

~/.bash_profile
eval "$(rbenv init -)"

احفظ وأغلق الملف.

بعد ذلك، قم بتطبيق التغييرات التي قمت بها على ملف ~/.bash_profile الخاص بك على جلسة الطرفية الحالية:

  1. source ~/.bash_profile

للتحقق من أن rbenv تم تكوينه بشكل صحيح، استخدم الأمر type، الذي سيعرض مزيدًا من المعلومات حول أمر rbenv:

  1. type rbenv

ستعرض نافذة الطرفية الخاصة بك ما يلي:

Output
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 من خلال سطر الأوامر في الخطوة التالية.

الخطوة 2 — تثبيت Ruby

بعد تثبيت إضافة ruby-build الآن، يمكنك تثبيت أي إصدار من إصدارات Ruby التي قد تحتاجها من خلال أمر واحد. في هذه الخطوة، ستختار إصدارًا من Ruby، وتقوم بتثبيته على جهازك، ثم تتحقق من التثبيت.

أولاً، استخدم العلم -l لعرض قائمة الإصدارات المتاحة من Ruby. لاحظ أن إصدارات فرعية حديثة غير مدرجة قد تكون متاحة أيضًا. على سبيل المثال، إذا كانت نتيجة هذا الأمر تعرض Ruby 3.0.5، فمن المرجح أن تكون قادرًا أيضًا على تثبيت 3.0.4.

  1. rbenv install -l
Output
2.6.10 2.7.6 3.0.4 3.1.2 jruby-9.3.6.0 mruby-3.1.0 picoruby-3.0.0 rbx-5.0 truffleruby-22.1.0 truffleruby+graalvm-22.1.0

سيكون إخراج تلك الأمر قائمة طويلة من الإصدارات التي يمكنك اختيار تثبيتها.

لهذا البرنامج التعليمي، سنقوم بتثبيت Ruby 3.1.2:

  1. rbenv install 3.1.2

يمكن أن يكون تثبيت Ruby عملية طويلة، لذلك كن جاهزًا لأن يستغرق التثبيت بعض الوقت لاستكماله.

بمجرد اكتمال التثبيت، قم بتعيينه كإصدار افتراضي لـ Ruby باستخدام الفرع global:

  1. rbenv global 3.1.2

تحقق من أن Ruby تم تثبيته بشكل صحيح عن طريق فحص رقم الإصدار الخاص به:

  1. ruby -v

ستبدو نتيجتك مشابهة لهذا:

Output
ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-darwin21]

لتثبيت واستخدام إصدار مختلف من Ruby، قم بتشغيل أوامر rbenv برقم إصدار مختلف، مثل rbenv install 2.7.6 و rbenv global 2.7.6.

الآن لديك إصدار واحد من Ruby مثبتًا ولقد قمت بتعيين إصدار Ruby الافتراضي. فيما يلي، ستقوم بإعداد نفسك للعمل مع حزم ومكتبات Ruby، أو gems، مما سيتيح لك بعد ذلك تثبيت Rails.

الخطوة 3 — العمل مع Gems

Gems هي حزم مكتبات وبرامج Ruby يمكن توزيعها في جميع أنحاء نظام Ruby. تستخدم أمر gem لإدارة هذه الـ gems. في هذه الخطوة، ستقوم بتكوين أمر gem استعدادًا لتثبيت Rails.

عند تثبيت جيم، يقوم عملية التثبيت بإنشاء توثيق محلي. يمكن أن يضيف هذا كمية كبيرة من الوقت إلى عملية تثبيت كل جيم، لذا يمكنك تعطيل إنشاء التوثيق المحلي عن طريق إنشاء ملف يسمى ~/.gemrc والذي يحتوي على إعداد تكوين لتعطيل هذه الميزة:

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

بعد ذلك، استخدم الأمر gem لتثبيت Bundler، أداة تدير تبعيات الجيم للمشاريع. هذا مطلوب ليعمل Rails بشكل صحيح:

  1. gem install bundler

سوف ترى نتائج مثل هذه:

Output
Fetching: bundler-2.3.18.gem Successfully installed bundler-2.3.18 1 gem installed

يمكنك استخدام أمر gem env لمعرفة المزيد عن البيئة وتكوين الجيمز. لرؤية موقع الجيمز المثبتة، استخدم الوسيطة home، مثل هذا:

  1. gem env home

سترى نتائج مماثلة لهذا:

/Users/sammy/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0

الآن بعد أن قمت بإعداد سير عمل الجيم الخاص بك واستكشفته، أنت حر في تثبيت Rails.

الخطوة 4 — تثبيت Rails

لتثبيت Rails، استخدم أمر gem install:

  1. gem install rails

يقوم الأمر gem بتثبيت الجيم الذي تحدده، بالإضافة إلى كل تبعياته. Rails هو إطار عمل تطوير ويب معقد ولديه العديد من التبعيات، لذا ستستغرق العملية بعض الوقت لإكمالها. في نهاية المطاف، سترى رسالة تفيد بأن Rails تم تثبيته، جنبًا إلى جنب مع تبعياته:

Output
... Successfully installed rails-7.0.3.1 35 gems installed

ملاحظة: إذا كنت ترغب في تثبيت إصدار مختلف من Rails، يمكنك إدراج الإصدارات الصالحة لـ Rails عن طريق البحث، الذي سيخرج لك قائمة طويلة من الإصدارات الممكنة. بعد ذلك يمكنك تثبيت إصدار معين، مثل 4.2.7، باستخدام العلم -v:

  1. gem search '^rails$' --all
  2. gem install rails -v 4.2.7

يعمل rbenv عن طريق إنشاء دليل للـ shims، أو المكتبات التي تعترض الاستدعاءات وتغيرها أو توجيهها. في هذه الحالة، تشير الـ shims إلى أوامر Ruby إلى الملفات المستخدمة بواسطة الإصدار الحالي من Ruby. من خلال الفرع الفرعي rehash، يحتفظ rbenv بالـ shims في ذلك الدليل لمطابقة كل أمر Ruby عبر كل إصدار من إصدارات Ruby المثبتة على خادمك. كلما قمت بتثبيت إصدار جديد من Ruby أو جوهرة توفر أوامرًا، مثل Rails، يجب عليك استخدام rehash.

لإعادة فرز دليل الـ shims، قم بتشغيل الأمر التالي:

  1. rbenv rehash

تحقق من تثبيت Rails الخاص بك عن طريق طباعة إصداره باستخدام هذا الأمر:

  1. rails -v

سترى إصدار Rails الذي تم تثبيته:

Output
Rails 7.0.3.1

بعد تثبيت Rails بنجاح، يمكنك بدء اختبار تثبيت Ruby on Rails الخاص بك وبدء تطوير تطبيقات الويب. في الخطوة التالية، ستتعلم كيفية تحديث وإلغاء تثبيت rbenv وRuby.

الخطوة 5 — تحديث وإلغاء تثبيت rbenv وRuby

عند القيام بصيانة المشاريع، من المفيد معرفة كيفية التحديث وإلغاء التثبيت عند الحاجة. في هذه الخطوة، ستقوم بترقية rbenv، ثم إلغاء تثبيت Ruby و rbenv من جهازك.

يمكنك ترقية rbenv و ruby-build باستخدام Homebrew عن طريق تشغيل الأمر التالي:

  1. brew upgrade rbenv ruby-build

إذا كان يتعين تحديث rbenv أو ruby-build، سيقوم Homebrew بذلك تلقائيًا. إذا كانت إعداداتك محدّثة بالفعل، ستحصل على إخراج مشابه للآتي:

Output
Warning: rbenv 1.2.0 already installed Warning: ruby-build 20220713 already installed

سيتأكد هذا من أننا نستخدم أحدث إصدار متاح من rbenv.

عند تنزيل إصدارات إضافية من Ruby، قد تتراكم مزيد من الإصدارات مما ترغب فيه في دليل ~/.rbenv/versions الخاص بك. باستخدام الأمر الفرعي uninstall في إضافة ruby-build، يمكنك إزالة هذه الإصدارات السابقة.

على سبيل المثال، قم بتشغيل الأمر التالي لإلغاء تثبيت إصدار Ruby 2.1.3:

  1. rbenv uninstall 2.1.3

باستخدام أمر rbenv uninstall، يمكنك تنظيف الإصدارات القديمة من Ruby بحيث لا تكون قد قمت بتثبيتها أكثر مما تستخدم حاليًا.

إذا قررت عدم الرغبة في استخدام rbenv، يمكنك إزالته من نظامك.

لفعل ذلك، افتح أولاً ملف ~/.bash_profile في محرر النصوص:

  1. nano ~/.bash_profile

ابحث واحذف السطر التالي من الملف لمنع rbenv من التشغيل عند فتحك للطرفية:

~/.bash_profile
...
eval "$(rbenv init -)"

بمجرد حذف هذا السطر، احفظ الملف واخرج من المحرر.

قم بتشغيل الأمر التالي لتطبيق التغييرات على الطرفية:

  1. source ~/.bash_profile

ثم، قم بإزالة rbenv وجميع إصدارات Ruby المثبتة باستخدام هذا الأمر:

  1. rm -rf `rbenv root`

أخيرًا، احذف حزمة rbenv ذاتها باستخدام Homebrew:

  1. brew uninstall rbenv

تحقق من إصدار rbenv للتأكد من أنه تم إلغاء تثبيته:

  1. rbenv -v

ستحصل على الإخراج التالي:

Output
-bash: /usr/local/bin/rbenv: No such file or directory

هذا يعني أنك قمت بنجاح بإزالة rbenv من جهازك.

الختام

في هذا البرنامج التعليمي، قمت بتثبيت Ruby on Rails باستخدام rbenv على macOS. من هنا، يمكنك تعلم المزيد حول البرمجة بلغة Ruby من خلال سلسلةنا كيفية البرمجة بلغة Ruby. يمكنك أيضًا استكشاف كيفية استخدام Ruby on Rails مع PostgreSQL بدلاً من قاعدة بياناته الافتراضية sqlite3، والتي توفر المزيد من التوسع والتمركز والاستقرار لتطبيقاتك.

Source:
https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-with-rbenv-on-macos