متغیرهای محیطی

پیکربندی runtime برنامه را با متغیرهای محیطی مدیریت کنید.

آخرین بازبینی:


متغیرهای محیطی برای پیکربندی runtime، مانند آدرس دیتابیس یا کلید یک سرویس خارجی، در اختیار برنامه قرار می‌گیرند. تغییر آن‌ها از CLI به runtime اعمال می‌شود.

پیش‌نیازها

  • ورود به CLI و انتخاب پروژه
  • یک App موجود
  • نام و مقدار متغیر مورد نیاز برنامه

مشاهده متغیرهای فعلی

abrun app env list <app>

خروجی فعلی CLI می‌تواند مقدار متغیرها را نمایش دهد. این دستور را در log عمومی، screen sharing یا job ناامن CI اجرا نکنید.

افزودن یا تغییر یک متغیر

نام و مقدار را به شکل KEY=VALUE ارسال کنید:

abrun app env set <app> NODE_ENV=production

برای مقدارهایی که فاصله یا نشانه‌های ویژه شل دارند، کل عبارت را quote کنید:

abrun app env set <app> 'PUBLIC_URL=https://example.com/path?mode=production'

CLI مجموعه جدید متغیرها را ذخیره و آن را روی App اعمال می‌کند. خروجی موفق شامل Updated KEY است.

مقدارهای حساس

در نسخه فعلی محصول، مقدارهای حساس نیز از همین مسیر متغیر محیطی مدیریت می‌شوند؛ secret store جداگانه‌ای را فرض نکنید.

  • مقدار واقعی را در مستندات، ticket، commit یا command نمونه قرار ندهید.
  • در CI مقدار را از secret store همان CI وارد کنید.
  • مراقب باشید commandهای واردشده ممکن است در history شل ذخیره شوند.
  • دسترسی token و عضویت پروژه را محدود نگه دارید.

نمونه برای CI، بدون hard-code کردن مقدار:

abrun app env set <app> "API_TOKEN=$SERVICE_API_TOKEN"

حذف یک متغیر

abrun app env unset <app> NODE_ENV

خروجی موفق شامل Removed NODE_ENV است و تنظیم جدید روی runtime اعمال می‌شود.

بررسی نتیجه

پس از تغییر، لاگ runtime را برای خطای پیکربندی بررسی کنید:

abrun app logs <app> --tail 100

اگر برنامه مقدارها را فقط هنگام شروع می‌خواند و رفتار جدید دیده نمی‌شود، یک restart کنترل‌شده انجام دهید:

abrun app restart <app>

رفع مشکل

  • اگر App پیدا نمی‌شود، abrun project current و سپس abrun apps را بررسی کنید.
  • اگر مقدار شامل $، فاصله یا & است، آن را درست quote کنید تا شل قبل از CLI تغییرش ندهد.
  • اگر برنامه پس از تغییر بالا نمی‌آید، مقدار را اصلاح کنید و لاگ‌ها و مراحل استقرار را ببینید.

قدم بعدی

برای ساخت DATABASE_URL یا متغیرهای اتصال، اتصال دیتابیس را بخوانید.

این صفحه مفید بود؟

بازخورد شما به بهترشدن مستندات کمک می‌کند.