گردو
راهنمای استقرار Ruby

دیپلوی ruby؛ Rails و Sinatra روی گردو

دیپلوی ruby روی سکوی ابری گردو برای Rails، Sinatra و Rack؛ از Git یا CLI با دستور ساخت و اجرا، متغیرها و دامنه. پروژه‌ی Ruby را در چند دقیقه منتشر کنید.

پاسخ کوتاه

برای دیپلوی ruby و استقرار برنامه‌های Rails و Sinatra، مخزن کد را متصل کنید تا Bundler به صورت خودکار gemها را نصب کند. برای بررسی امکانات سرور روبی، صفحه هاست روبی و راهنمای آموزش دیپلوی در دسترس شماست.

آخرین بازبینی: ۱۴۰۵/۰۶/۱۵

آماده‌سازی پروژه برای دیپلوی ruby

فایل‌های وابستگی پروژه یعنی Gemfile و Gemfile.lock را در مخزن گیت قرار دهید. مقادیر پیش‌فرض دستور ساخت و دستور اجرا برای این استک:

# دستور ساخت
bundle install && bundle exec rails assets:precompile

# دستور اجرا
bundle exec puma -C config/puma.rb

Puma باید روی tcp://0.0.0.0:$PORT گوش دهد.

استقرار خودکار مستقیم از مخزن Git

  1. در پنل کاربری گردو کلاد یک پروژه و محیط جدید ایجاد کنید.
  2. سرویس را به مخزن GitHub یا GitLab و شاخه مورد نظر متصل نمایید.
  3. دستور ساخت و دستور اجرا را مطابق با نیازمندی‌های پروژه تنظیم کنید.
  4. متغیرهای محیطی ضروری را تعریف کرده و فرآیند استقرار را آغاز نمایید.
  5. در بخش دامنه‌ها، دامنه‌ی اختصاصی خود را متصل کرده و از SSL رایگان بهره‌مند شوید.

استقرار از پوشه محلی با Gerdoo CLI

curl -fsSL https://get.gerdoo.cloud/install.sh | sh
gerdoo login
cd your-project
gerdoo deploy
gerdoo logs

ابزار خط فرمان گردو امکان انتشار مستقیم کدهای محلی را بدون نیاز به ارسال به گیت فراهم می‌سازد.

در Windows (PowerShell) به‌جای دستور نصب از irm https://get.gerdoo.cloud/install.ps1 | iex استفاده کنید.

نکات مهم محیط عملیاتی برای Ruby

  • RAILS_MASTER_KEY و DATABASE_URL را secret کنید.
  • migration را پیش از جابه‌جایی release بررسی کنید.
  • Sidekiq یا workerهای دیگر را در سرویس جدا اجرا کنید.
  • بررسی سلامت و زمان شروع به کار سرویس را پیش از هدایت ترافیک واقعی تست کنید.
  • داده‌های دائمی و فایل‌های کاربران را روی دیسک‌های ماندگار یا ذخیره‌سازی ابری نگه دارید.

سوالات پرتکرار

دیپلوی ruby و استقرار دیپلوی rails به چه شکل است؟

در دیپلوی ruby برای فریم‌ورک محبوب روبی آن ریلز، دستور bundle install و کامپایل استاتیک اسست‌ها به صورت خودکار اجرا شده و وب‌سرور Puma پروژه را آنلاین می‌کند.

دیپلوی ruby on rails و دیپلوی روبی با دیتابیس چگونه کانفیگ می‌شود؟

در دیپلوی ruby on rails و دیپلوی روبی، اطلاعات اتصال به دیتابیس از طریق متغیر محیطی DATABASE_URL به برنامه تزریق می‌شود و نیازی به هاردکد کردن اطلاعات حساس در کدهای پروژه نیست.