البحث في الموقع
المحتوى عن 'rbenv'.
-
ريلز أو Ruby on Rails هو أحد أكثر الإطارات المعروفة للمطورين الذين يتطلعون إلى إنشاء مواقع وتطبيقات ويب، التي تجمع بين لغة برمجة روبي مع إطار العمل ريلز framework Rails مما جعل إنشاء التطبيقات الويب أكثر بساطة. لتثبيت ريلز يمكنك استخدام أداة سطر الأوامر rbenv التي ستوفر لك بيئة صلبة لتطوير تطبيقات ريلز تتيح لك التبديل بسهولة بين إصدارات Ruby و إبقاء فريقك بأكمله على نفس الاصدار. توفر لك rbenv دعما لتحديد اصدارات روبي الخاصة بالتطبيق وتغيرها لكل مستخدم، كما تسمح لك باستخدام متغير لإعادة تحديد إصدار روبي. سوف يوضح لك هذا المقال عملية تثبيت ريلز باستخدام rbenv. ## المتطلبات الأساسية من أجل متابعة هذا المقال تحتاج إلى: إعداد خادم اوبنتو 18.04 و تملك مستخدم غير جذري (non-root) يملك صلاحيات sudo و مثبت عليه جدار حماية. يمكنك اعداده بالعودة إلى مقال الإعداد الأولي لخام اوبنتو قم بثبيت Node.js باستخدام official PPA كما هو موضح في كيفية تثبيت Node.js على 18.04 اوبنتو إذ تعتمد بعض ميزات ريلز مثل خط أنابيب الأصول Asset Pipeline ومُشغل جافاسكربت الآني runtime JavaScript على ما يوفره Node.js. الخطوة الأولى: تثبيت rbenv ومتطلباته تعتمد Ruby على عدة حزم يمكنك تثبيتها من خلال apt-get وبمجرد تثبيتها يمكنك تثبيت rbenv واستخدامه لتثبيت روبي. أولاً، قم بتحديث قائمة الحزمة الخاصة بك: $ sudo apt update من قم بتثبيت المتطلبات اللازمة لتشغيل روبي بتنفيذ الأمر التالي . $ sudo apt install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm5 libgdbm-dev بمجرد الانتهاء من تثبيت المتطلبات يمكنك البدء بتثبيت rbenv من GitHub ووضعه داخل المجلد rbenv ./~: $ git clone https://github.com/rbenv/rbenv.git ~ / .rbenv بعد ذلك لابد من تعريف PATH$ الخاص بك على rbenv لاستخدامها في واجهة سطر الأوامر ويكون ذلك بإضافة الملف rbenv/bin./~ إلى PATH$ الخاص بك داخل الملف bashrc./~ ولكن تذكر من أجل ظهور التغيرات لابد من إنهاء ومن ثم إعادة تشغيل واجهة سطر الأوامر؛ انظر للأمر التالي: $ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc الآن أضف الأمر "(-eval "$(rbenv init إلى الملف bashrc./~ من أجل أن يتم تجميل rbenv تلقائيا: $ echo 'eval "$(rbenv init -)"' >> ~/.bashrc لتطبيق التغييرات التي أجرتها على الملف bashrc./~ على جلسة الصدفة shell الحالية نفذ الأمر التالي: $ source ~/.bashrc للتحقق من إعدادات rbenv أنه تم تثبيتها بشكل صحيح استخدم الأمر type الذي سيعرض المزيد من المعلومات حول 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 } بعد ذلك قم بتنزيل ruby-build وهو عبارة عن إضافة plugin، إذ تضيف الأمر rbenv install الذي يسهل عملية تنزيل الإصدارات الجديدة من روبي: $ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build في هذه المرحلة تم تثبيت كل من rbenv و ruby-build لنبدأ الآن بتثبيت روبي: الخطوة الثانية: تثبيت روبي مع ruby-build بعد تثبيت ruby-build يمكنك الآن تثبيت إصدارات روبي التي تحتاج بأمر بسيط. اولا سنعرض جميع الإصدارت المتاحة من روبي: $ rbenv install -l ستظهر لك قائمة كبيرة من الإصدارات التي يمكن تثبيتها، لنقم بتثبيت الإصدار 2.5.1 المتوفر وقت كتاب هذا المقال: $ rbenv install 2.5.1 من أجل تثبيت إصدار روبي الذي قمنا بتثبيته كإصدار الافتراضي استخدم الرمز global كجزء من الأمر: $ rbenv global 2.5.1 للتحقق من أن التثبيت تم بشكل صحيح تحقق من رقم اصدار روبي: $ ruby -v إذا قمت بتثبيت نفس الاصدار السابق لابد ان تظهر لك المخرجات التالية: ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux] لتثبيت إصدار مختلف من روبي قم تنفيذ الأمر rbenv مع رقم إصدار مختلف مثل: rbenv install 2.3.0 ثم rbenv global 2.3.0. الآن لديك إصدار واحد على الأقل من روبي قم بتثبيته و تعينه باصدار افتراضي لروبي فبعد ذلك سوف نبدأ بإعداد ريلز والجواهر gems الخاصة بها. الخطوة الثالثة: العمل مع الجواهر Gems الجواهر Gems هي الطريقة التي يتم بها توزيع مكتبات روبي، استخدام الأمر gem لإدارة هذه gems كما سوف نستخدم هذا الأمر لتثبيت ريلز. أثناء تثبيت gem تعمل عملية التثبيت بإنشاء وثائق محلية مما يضيف وقت أطول أثناء عملية تثبيت كل gem، لذلك سنوقف هذه العملية عن طريق إنشاء ملف يسمى gemrc./~ الذي يحتوي على الاعدادت اللازمة لإيقاف هذه الميزة: $ echo "gem: --no-document" > ~/.gemrc المُحزِّم Bundler هي عبارة عن أداة يستخدمها gem لإدارة ما يعتمد عليه المشاريع، بالأمر التالي سنثبت Bundler الذي يعتمد عليه ريلز. $ gem install bundler ستظهر المخرجات التالية: Fetching: bundler-1.16.2.gem (100%) Successfully installed bundler-1.16.2 1 gem installed يمكنك استخدام الأمر gem env (كلمة env بالأمر هي اختصار من كلمة environment) لمعرفة المزيد حول من البيئات والإعدادات ب gems، بإمكانك معرفة مكان تثبيت gems باستخدام متغير home انظر للمثال : $ gem env home سوف يعرض لك الناتج التالي: /home/sammy/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0 بمجرد الإنتهاء من إعدادات gems يمكنك تثبيت ريلز بالخطة التالية: الخطوة الرابعة: تثبيت ريلز من أجل تثبيت ريلز استخدم الأمر gem install مع الراية -v لتحديد الإصدار، في هذا المقال التعليمي، سنثبت الإصدار 5.2.0: $ gem install rails -v 5.2.0 يقوم الأمر gem بتثبيت الجواهر المحددة وكذلك كل ما تعتمد عليه. تُعد ريلز لتطوير الويب معقدة إذ تعتمد على العديد التبعيات ، لذلك تستغرق عملية التثبيت بعض الوقت،و لكن بالنهاية سترى رسالة تفيد بأن ريلز مثبت، بالإضافة إلى كل ما تعتمد عليه: Successfully installed rails-5.2.0 38 gems installed ملاحظة: إذا كنت ترغب في تثبيت إصدار مختلف من ريلز، يمكنك عرض الإصدارات الصالحة من ريلز من خلال إجراء عملية بحث، مما يؤدي إلى لإظهار قائمة طويلة من الإصدارات، يمكننا بعد ذلك تثبيت إصدار معين، مثل 4.2.7: $ gem search '^rails$' --all $ gem install rails -v 4.2.7 في حال كنت ترغب في تثبيت أحدث إصدار من ريلز نفذ الأمر دون تحديد رقم الاصدار: $ gem install rails يعمل rbenv عن طريق إنشاء مجلد shims، والذي يشير إلى الملفات المستخدمة بإصدار ريلز المفعل حاليًا،من خلال الأمر الفرعي rehash يقوم rbenv بإصلاح shims في هذا المجد لربط كل أمر في روبي عبر كل إصدار مثبت من روبي على الخادم الخاص بك. كلما تم تثبيت إصدار جديد من روبي أو gem نفذ هذا الامر. $ rbenv rehash تحقق من تثبيت ريلز بشكل صحيح عن طريق طباعة اصداره باستخدام هذا الأمر: $ rails -v إذا تم تثبيته بشكل صحيح ، سترى إصدار ريلز الذي تم تثبيته: Rails 5.2.0 في هذه المرحلة سنقوم بالبدء في اختبار تثبيت ريلز والبدء في تطوير تطبيقات الويب، حافظ على تحديث rbenv باستمرار. الخطوة الخامسة: تحديث rbenv نظرًا لأنك قمت بتثبيت rbenv يدويًا باستخدام Git، يمكنك تحديثه إلى الإصدار الأحدث في أي وقت باستخدام أمر git pull في المجلد rbenv./~: $ cd ~/.rbenv $ git pull هكذا سنضمن أننا نستخدم أحدث إصدار من rbenv المتاحة. الخطوة السادسة: إلغاء تثبيت إصدارات روبي أثناء تنزيل إصدارات إضافية من روبي يمكنك تجميع إصدارات أكثر مما تريد في المجلد rbenv/versions./~ استخدم الأمر uninstall الموجود ب ruby-build لإزالة أي من الإصدارات السابقة على سبيل المثال إزالة الاصدار 2.1.3: $ rbenv uninstall 2.1.3 باستخدام الأمر `rbenv uninstall` يمكنك من إزالة الإصدارات القديمة من روبي بحيث لا يكون لديك تثبيت أكثر مما تستخدمه حاليًا. الخطوة السابعة: إلغاء تثبيت rbenv إذا قررت أنك لم تعد ترغب في استخدام rbenv، فيمكنك إزالته من نظامك ،من أجل القيام بذلك افتح أولاً ملف `bashrc./~` في المحرر الخاص بك: $ nano ~/.bashrc ابحث عن السطرين التاليين من الملف ~/.bashrc ثم قم بحذفها: export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)" احفظ الملف واخرج من المحرر،ثم قم بإزالة rbenv وجميع إصدارات روبي المثبتة بهذا الأمر: rm -rf rbenv root سجل الخروج وقم بالعودة لحفظ التغييرات على الصدفة shell الخاص بك. الخلاصة في هذا المقال التعليمي قمت بتثبيت rbenv وريلز ويمكن الآن الانتقال إلى توثيق ريلز على موسوعة حسوب لمزيد من المعلومات. ترجمة -وبتصرف- للمقال How To Install Ruby on Rails with rbenv on Ubuntu 18.04 لصاحبيه Brian Hogan و Lisa Tagliaferri
-
يتناول هذا المقال تثبيت بيئة تطوير Ruby on Rails على الإصدار 16.04 من أوبونتو. في أغلب الأحوال ستُنفَّذ الشفرة البرمجيّة التي تكتبها على خادوم لينكس، وأوبونتو هي إحدى توزيعات لينكس الأسهل استخداما وتوجد الكثير من الموارد عنها على الشبكة. تثبيت Ruby أول ما يجب علينا فعله هو تثبيت الاعتماديات Dependencies التي يحتاجها Ruby للعمل. نبدأ أولا بتحديث فهرس الحزم ثم تثبيت الاعتماديّات: sudo apt update sudo apt install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev nodejs الخطوة الموالية هي تثبيت Ruby. توجد طرق عدّة للتثبيت، سنستخدم rbenv وهي أداة خفيفة وسريعة لإدارة إصدارات Ruby. نبدأ بتثبيت rbenv : cd git clone https://github.com/rbenv/rbenv.git ~/.rbenv echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(rbenv init -)"' >> ~/.bashrc exec $SHELL الأداة rbenv جاهزة الآن. سنثبّت ruby-build وهي إضافة تعمل مع الأداة rbenv وتتيح تثبيت إصدارات عدّة من Ruby في مجلّدات مختلفة على نفس النظام. git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc exec $SHELL ثم نثبّت الإصدار 2.4.0 من Ruby: TMPDIR=~/tmp/ rbenv install 2.4.0 rbenv global 2.4.0 يُثبّت الأمر الأول الإصدار المطلوب ضمن مجلّد العمل حيث نُفِّذ الأمر؛ في ما يضبط الأمر الثاني إصدار Ruby المبدئي، أي الإصدار الذي سيُستخدَم عند عدم تحديد إصدار. للتأكد من تثبيت Ruby والإصدار المثبّت ننفذ الأمر: ruby -v الذي يُظهر نتيجة تشبه التالي: ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux] الخطوة الأخيرة هي تثبيت Bundler الذي يوفّر بيئة تطوير متجانسة لـ Ruby عبر تتبّع الاعتماديات وتثبيت الإصدارات المطلوبة منها بالضبط: gem install bundler وتنفيذ الأمر لأخذ التثبيت الجديد في الحسبان: rbenv rehash تثبيت Rails يتضمّن إطار العمل Rails الكثير من الاعتماديات، لذا سنحتاج لبيئة تنفيذ JavaScript مثل NodeJS التي ستمكّننا من استخدام مكتبات تتيح إمكانيّة جمع وضغط ملفات جافاسكريبت من أجل الحصول على بيئة تطوير أسرع. نثبّت NodeJS من المستودع الرسمي على النحو التالي: curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - sudo apt install -y nodejs ثم نثبّت Rails: gem install rails -v 5.0.1 ثم ننفذ الأمر التالي ليمكننا استخدام Rails: rbenv rehash Rails مثبّت الآن، يمكننا التأكّد من ذلك بتنفيذ الأمر التالي الذي يُظهر رقم الإصدار المثبت: rails -v إعداد قاعدة بيانات MySQL يأتي Rails مبدئيا بقاعدة بيانات sqlite3؛ إلا أن هذا النوع من قواعد البيانات لا يناسب تطبيقات كثيرة. يمكن في هذه الحالة إعداد Rails للعمل مع قاعدة بيانات MySQL (أو PostgreSQL). نثبّت خادوم وعميل MySQL من المستودعات الرسمية لأوبونتو: sudo apt install mysql-server mysql-client libmysqlclient-dev سيُطلَب منك خلال التثبيت إنشاءُ كلمة سر خاصة بالحساب الإداري root (انتبِه إلى أنّه حساب خاص بنظام MySQL لإدارة قواعد البيانات، وليس لنظام التشغيل أوبونتو). تتضمّن الحزمة libmysqlclient-dev الملفات الضرورية لتثبيت الاعتماديّات التي يحتاجها Rails للاتصال بقاعدة بيانات MySQL. ننفّذ بعد تثبيت MySQL الأمريْن التاليّيْن لتحضير قاعدة البيانات لبيئة الإنتاج (يمكنك تجاوز هذه الخطوة إن كنت تثبّت Rails على حاسوب شخصي): sudo mysql_install_db sudo mysql_secure_installation سيُطلب منك النّظام إدخال كلمة سرّ الحساب الجذر في MySQL؛ ثمّ يسألك ما إذا كنتَ تُريد تغييرها. أدخل حرف n (دلالةً على “no” أي “لا”) إن لم تكن ترغبُ في ذلك. بالنسبة لبقية الأسئلة يمكنك قبول القيم المبدئية بالنقر على زرّ Enter. أول تطبيق Rails حان الوقت الآن لتشغيل أول تطبيق Ruby on Rails. ننشئ تطبيقا باسم myapp يستخدم قاعدة البيانات MySQL: rails new myapp -d mysql انتظر اكتمال إنشاء التطبيق الذي قد يستغرق وقتا، ثم انتقل إلى مجلد التطبيق: cd myapp عدّل الملف config/database.yml بإضافة كلمة سر الحساب الإداري لقاعدة البيانات (أعددناها أثناء تثبيت MySQL، يمكنك تركها فارغة إن لم تكن أعددتَ كلمة سر لـ MySQL): default: &default adapter: mysql2 encoding: utf8 pool: 5 username: root password: socket: /var/run/mysqld/mysqld.sock اكتب كلمة السر أمام التعليمة password ضمن المقطع السابق الموجود أعلى الملف بعد التعليقات الأولى (تبدأ التعليقات بالعلامة #)؛ ثم نفّذ الأمر التالي لإنشاء قاعدة البيانات التي سيعمل عليها التطبيق: rake db:create النتيجة: Created database 'myapp_development' Created database 'myapp_test' إن واجهك خطأ Access denied for user 'root'@'localhost' (using password: NO) فهذا يعني أنك لم تكتب كلمة السر بطريقة صحيحة. نشغل خادوم التطوير: rails server يمكنك بعد تشغيل خادوم التطوير إدخال العنوان http://localhost:3000/ في المتصفح لمعاينة صفحة التطبيق المبدئي في Rails. إعداد Git هذه الخطوة اختيارية ولكنه تفيدك إن كنت تخطّط لاستعمال Git لإدارة إصدارات المشروع وربطه بحسابك على Github. أبدل YOUR NAME وYOUR@EMAIL.com في الأوامر أدناه على التوالي باسمك والبريد الذي استخدمته للتسجيل على Github. git config --global color.ui true git config --global user.name "YOUR NAME" git config --global user.email "YOUR@EMAIL.com" ssh-keygen -t rsa -b 4096 -C "YOUR@EMAIL.com" يُولّد الأمر الأخير في الأوامر أعلاه زوج مفاتيح SSH سنستخدمها في ما بعد للاتصال بحسابنا على Github. يضع الأمر ssh-keygen مبدئيا زوج المفاتيح على المسار ssh./~. نأخذ المفتاح العمومي الذي يوجد بملف المفتاح ذي الامتداد pub، ويُسمّى مبدئيا id_rsa.pub وننسخه ضمن مفاتيح SSH على حسابنا في Github الموجودة هنا. انقر على الزّر New SSH Key، أعط للمفتاح اسما تختاره ثم ألصق في الحقل الثاني محتوى الملف ssh/id_rsa.pub/~ الذي يمكن الحصول عليه بالأمر التالي، ثم انقر على زرّ Add SSH Key لاعتماد المفتاح: cat ~/.ssh/id_rsa.pub يمكنك التأكد من نجاح العملية بتنفيذ الأمر التالي: ssh -T git@github.com يجب أن تظهر لك رسالة تشبه التالي (يُذكَر فيها اسم حسابك على Github): Hi Zeine77! You've successfully authenticated, but GitHub does not provide shell access. ترجمة - بتصرّف - للمقال Setup Ruby On Rails on Ubuntu 16.04 Xenial Xerus.