مراحل و لاگ‌های استقرار

مراحل build و rollout را بخوانید، لاگ‌ها را بررسی کنید و از نسخه مشکل‌دار برگردید.

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


هر deployment یک تلاش قابل‌مشاهده برای تبدیل منبع یا image به نسخه فعال App است. همان شناسه از ارسال منبع تا health check نهایی حفظ می‌شود.

اجرای یک استقرار

منبع پوشه فعلی را مستقر کنید:

abrun deploy <app>

برای دیدن خطوط خام build و rollout علاوه بر timeline خلاصه:

abrun deploy <app> --verbose

پس از موفقیت، --logs مستقیماً لاگ runtime را دنبال می‌کند:

abrun deploy <app> --logs

برای انتخاب روش build از --platform استفاده کنید. حالت auto ابتدا Dockerfile را انتخاب می‌کند و سپس Node.js یا Go را تشخیص می‌دهد:

abrun deploy <app> --platform node abrun deploy <app> --platform go abrun deploy <app> --platform dockerfile --dockerfile-path deploy/Dockerfile

مسیر صریح Dockerfile در صورت نبودن فایل خطا می‌دهد. انتخاب اجباری Node.js یا Go نیز به‌ترتیب وجود package.json یا go.mod را بررسی می‌کند.

مراحل عمومی

CLI و کنسول همین ترتیب را نمایش می‌دهند:

  1. Uploading source — snapshot منبع برای deployment ارسال می‌شود.
  2. Planning build — روش build، framework و دستورهای لازم تشخیص داده می‌شوند.
  3. Building image — برنامه به image قابل اجرا تبدیل می‌شود.
  4. Publishing image — artifact ساخته‌شده برای release آماده می‌شود.
  5. Releasing — نسخه جدید روی runtime اعمال می‌شود.
  6. Checking health — ابران آماده‌بودن نسخه جدید را بررسی می‌کند.
  7. Ready — نسخه جدید سالم است و URL فعال نمایش داده می‌شود.

Ready تنها نتیجه کاملاً موفق است. وضعیت‌های failed، cancelled یا degraded را موفق در نظر نگیرید.

مشاهده deploymentهای قبلی

abrun app deployment list <app> abrun app deployment inspect <app> <deployment> abrun app deployment logs <app> <deployment>

برای مشاهده تغییر وضعیت تا نتیجه نهایی:

abrun app deployment watch <app> <deployment>

لاگ deployment مربوط به build و rollout است. لاگ App رفتار نسخه در حال اجرا را نشان می‌دهد:

abrun app logs <app> --tail 100 abrun app logs <app> --follow

تشخیص خطا

ابتدا مرحله‌ای را پیدا کنید که متوقف شده است:

  • Planning build: فایل‌های منبع، Dockerfile، root directory و دستورهای تشخیص‌داده‌شده را بررسی کنید.
  • Building image: خطای dependency، compile یا command خروجی build را از ابتدای بخش خطادار بخوانید.
  • Releasing: پورت runtime، متغیرهای محیطی و دسترسی به dependencyها را بررسی کنید.
  • Checking health: مطمئن شوید process روی 0.0.0.0 و پورت تعریف‌شده گوش می‌دهد و crash نمی‌کند.

برای دیدن لاگ container قبلی پس از crash:

abrun app logs <app> --previous --tail 100

بازگشت از تغییر مشکل‌دار

فهرست deploymentها را باز کنید، شناسه نسخه سالم را پیدا کنید و rollback بسازید:

abrun app deployment list <app> abrun app deployment rollback <app> <deployment>

Rollback یک deployment جدید بر پایه نسخه انتخاب‌شده ایجاد می‌کند؛ history قبلی حذف نمی‌شود. بعد از آن URL و لاگ runtime را دوباره بررسی کنید.

لغو deployment جاری

abrun app deployment cancel <app> <deployment>

لغوکردن فقط برای deployment قابل‌لغو معتبر است و نسخه سالم قبلی را جایگزین نمی‌کند.

قدم بعدی

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

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