ما المثبّت على خادم Ruby on Rails الخاص بك؟
- Ruby 3.2 من مستودع Ubuntu 24.04
- Rails 8 (الإصدار 8.1 أو أحدث) ومشروع تجريبي في /home/app/uygulama
- Puma على 127.0.0.1:3000، يعمل كخدمة systemd باسم uygulama
- SQLite، وقاعدة بيانات الإنتاج في storage/production.sqlite3
- HTTPS عبر Caddy مع تفعيل force_ssl في Rails، فالنطاق اختياري
- الإعدادات في /etc/seturack-rails.env: RAILS_ENV=production وSECRET_KEY_BASE مولّد
- build-essential ومكتبات التطوير لتجميع الجواهر (gems)، مع ملف swap بحجم 2 GB
- جدار حماية لا يفتح سوى المنافذ 22 و80 و443
ما الحجم الذي تحتاجه لـ Ruby on Rails؟
لا تذكر وثائق Rails رقمًا لـ RAM. فالذاكرة تتبع عدد عمليات Puma وخيوطه، وجواهرك وassets:precompile. وكقاعدة عامة، يناسب 1 GB التجارب والمشاريع الصغيرة، ويكفي من 2 إلى 4 GB لبداية مشروع بزيارات حقيقية. وأصغر حجم هو 1 GB من RAM و1 CPU وقرص 15 GB، ويضيف التثبيت 2 GB من swap لعمليات البناء. وإن لم يكفِ فارفع الحجم من لوحتك وحدّد عدد عمليات Puma بـ WEB_CONCURRENCY.
| الاستخدام | الحجم | السعر | اختر |
|---|---|---|---|
| للبداية | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/شهريًا | |
| متوسط | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/شهريًا | |
| قوي | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/شهريًا |
لمن هو؟
- المطورون الذين يريدون تشغيل مشروع Rails على خادمهم الخاص
- من يتعلمون Rails أو يبنون نموذجًا أوليًا أو منتجًا صغيرًا على خادم واحد
- المشاريع التي تبدأ على SQLite وقد تنتقل لاحقًا إلى PostgreSQL
ماذا يحدث بعد الطلب؟
- اضبط الحجم وأتمّ الدفع.
- يبدأ خادمك ويُثبَّت Ruby وRails من تلقاء نفسيهما. استغرق ذلك نحو 5 دقائق في اختباراتنا على خوادم حقيقية.
- افتح عنوان الموقع من تبويب نظرة عامة. تعرض الصفحة التجريبية إصدار Rails.
- اتصل عبر SSH واكتب su - app، وانتقل إلى ~/uygulama وحمّل الإعدادات من /etc/seturack-rails.env إلى طرفيتك.
- بعد تغيير شيفرتك، نفّذ bundle install وbin/rails db:migrate وbin/rails assets:precompile.
- أعد تشغيل Puma بالأمر systemctl restart uygulama بصفة root.
مع كل خادم
- نسخ احتياطي يومي مشمول في السعر
- حركة بيانات غير محدودة
- صلاحية root كاملة
- ارفع RAM والمعالج أو اخفضهما لاحقًا، وكبّر القرص
- الموقع: Istanbul · IST-1.
من المفيد أن تعرف
- المشروع التجريبي مجرد عمدًا: لا فيه Hotwire ولا Action Cable ولا Solid Queue ولا إعداد Kamal. وحين تحضر مشروعك يضيف bundle install كل ما يذكره Gemfile.
- فرض HTTPS موجود في config/initializers/seturack.rb. احتفظ بذلك الملف عند إحضار مشروعك، أو اضبط assume_ssl وforce_ssl بنفسك.
- إن كان مشروعك يستخدم Rails credentials فأضف RAILS_MASTER_KEY إلى /etc/seturack-rails.env.
- المثبّت هو Ruby 3.2. وإن احتاج مشروعك إلى Ruby أحدث فثبّته بنفسك وحدّث سطر PATH في ملف الخدمة.
- تحديث الجواهر وRails مسؤوليتك. أما تحديثات Ubuntu الأمنية فتُثبَّت من تلقاء نفسها.
أسئلة وأجوبة عن Ruby on Rails
كيف أحضر مشروع Rails الخاص بي إلى الخادم؟
اتصل عبر SSH واكتب su - app. غيّر اسم المشروع التجريبي، واستنسخ شيفرتك إلى ~/uygulama بـ git clone وانسخ config/initializers/seturack.rb إليه. نفّذ bundle install وbin/rails db:prepare وbin/rails assets:precompile، ثم systemctl restart uygulama بصفة root.
كيف أنفّذ أوامر Rails على الخادم؟
اكتب su - app ثم cd ~/uygulama. حمّل الإعدادات بـ set -a; . /etc/seturack-rails.env; set +a. وأضف مسار الجواهر بـ export PATH=$GEM_HOME/bin:$PATH. بعد ذلك تستخدم الأوامر bundle وbin/rails console وbin/rails db:migrate إعدادات الإنتاج لديك.
كم يحتاج Ruby on Rails من RAM؟
لا يوجد رقم رسمي لـ RAM في Rails. وكقاعدة عامة، يناسب 1 GB التجارب والمشاريع الصغيرة، ويكفي من 2 إلى 4 GB لبداية زيارات حقيقية. وإضافة عمليات Puma تستهلك ذاكرة أكثر من إضافة الخيوط.
هل يمكنني استخدام PostgreSQL بدل SQLite؟
نعم. نفّذ apt install postgresql libpq-dev بصفة root، وأضف pg إلى Gemfile، وغيّر قسم production في config/database.yml ونفّذ bin/rails db:prepare. ويمكنك أيضًا وضع قاعدة البيانات على خادم منفصل.
أي إصدارات من Ruby وRails مثبّتة؟
تحصل على Ruby 3.2 من Ubuntu 24.04 وأحدث إصدار من Rails 8 وقت التثبيت (8.1 أو أحدث). وتذكر أدلة Rails أن Rails 8.0 و8.1 يتطلبان Ruby 3.2.0 أو أحدث.
هل هناك عنوان لفحص صحة Rails؟
نعم. المسار /up الخاص بـ Rails مفتوح ويعيد 200 ما دام التطبيق يعمل. وهو مستثنى من إعادة التوجيه إلى HTTPS، فيمكنك توجيه أداة المراقبة إليه مباشرة.