پرش به مطلب اصلی

نکات تکمیلی

استفاده‌ از فایل chabok.json​

برای چابکان فایل chabok.json و برای کلودیوا فایل diva.json را در مسیر پروژه قرار دهید. ساختار JSON نمونه‌های زیر برای هر دو یکسان است؛ نام فایل و CLI باید با پنل مقصد هماهنگ باشد. استقرار با chabok deploy برای چابکان و diva deploy برای کلودیوا انجام می‌شود.

استقرار بر اساس نام سرویس​

شاید پرسیدن شناسه سرویس در هر استقرار برای شما جالب نباشد. برای رفع این موضوع می‌توانید از فایل‌ chabok.json استفاده نمایید. البته کاربرد‌های این فایل بیشتر از معرفی نام سرویس است که در ادامه به توضیحات هر بخش خواهیم پرداخت.

کافیست وارد ریشه برنامه‌ خود شده و یک فایل به نام chabok.json با محتوا زیر ایجاد نمایید، مانند نمونه زیر، میتوانید نام سرویس خود را مشخص نمایید:

{
"service": "php-test"
}

چابکان در هر بار اجرای دستور chabok deploy ابتدا محتویات این فایل‌ را چک می‌کند و سپس عملیات استقرار را آغاز می‌کند. توجه داشته باشید مقدار service در مثال بالا تستی است و شما متناسب با نام سرویس دلخواه باید آن را تغییر دهید.

استقرار بر اساس مسیر​

در بعضی از مواقع نیاز است تا فقط در یک مسیر خاص در سرویس خود اقدام به دیپلوی برنامه نمایید، برای این مورد مانند نمونه بالا ابتدا کافیست وارد ریشه برنامه‌ خود شده و یک فایل به نام chabok.json با محتوا زیر ایجاد نمایید:

{
"destination": "/app/test/folder/"
}

استقرار در سرویس wordpress​

در نمونه زیر، در مسیر ایجاد شده /app/wp-content/themes/new-theme/ می میخواهیم theme جدیدی در سرویس wordpress خود قرار دهیم و برای این مورد به صورت زیر فایل chabok.json را در سیستم خود میسازیم، توجه داشته باشید که بعد از قرار گیری مسیر destination و اعمال دیپلوی تمامی محتویات فایل مشخص شده با فایل های جدید جایگزین می شود، پس قبل از اجرا دستور chabok deploy از عدم نیاز به محتویات فولدر و یا خالی بودن آن اطمینان حاصل نمایید.

{
"destination": "/app/wp-content/themes/new-theme/"
}

عدم دیپلوی فایل​

در نسخهٔ 0.9.0، فایل اختصاصی نادیده‌گرفتن آپلود برای چابکان .chabokignore و برای کلودیوا .divaignore است. در هر پوشه فایل اختصاصی اولویت دارد؛ در نبود آن .dockerignore و سپس .gitignore انتخاب می‌شود. این فایل‌ها خودکار ادغام نمی‌شوند؛ هنگام انتقال پروژه بین پنل‌ها، قواعد مؤثر را حفظ کنید.

در صورتی که فایلی در فرآیند دیپلوی به سرویس منتقل نشد، ابتدا فایل های ignore شده را چک فرمایید.

در صورتی که فایل دیپلوی نشده به عنوان مسیرهای دائمی در سرویس شما معرفی شده باشد، عمل دیپلوی روی فایل صورت نمیگیرد. در این حالت بایستی یکی از دو راه زیر را انجام دهید:
فایل مد نظر را از مسیر های دائمی خارج نمایید تا دیپلوی انجام شود، اما با اینکار تمام فایل های قبلی داخل مسیر دائمی معرفی شده پاک خواهند شد و یا به صورت دستی محتویات فایل را به سرویس منتقل نمایید.

خطا در آپلود فایل​

سرورهای واسط زیر مخصوص چابکان و متغیر CHABOK_API_URL هستند؛ آنها را برای کلودیوا تنظیم نکنید. CLI کلودیوا از DIVA_API_URL استفاده می‌کند و در نسخهٔ 0.9.0 آدرس پیش‌فرض آن https://apihub.cloudiva.net/fa/api/v1/ است. فقط اگر آدرس جایگزین رسمی کلودیوا را از پشتیبانی دریافت کرده‌اید، آن را تنظیم کنید؛ Token کلودیوا را به endpoint چابکان نفرستید.

زمان هایی وجود دارد که شبکه شما با سرور اصلی چابکان ارتباط درستی نمی تواند برقرار کند تا فایل های دیپلوی ارسال شود. برای رفع مشکل می توانید یکی از سرور های زیر را تنظیم بفرمایید و Deploy خود را از سرورهای واسط انجام دهید.

سرور واسط اول (مناسب اینترنت داخلی)​

ویندوز

set CHABOK_API_URL=https://apihub.chabokanco.ir/fa/api/v1/

لینوکس:

export CHABOK_API_URL=https://apihub.chabokanco.ir/fa/api/v1/

سرور واسط دوم (مناسب اینترنت خارج)​

ویندوز

set CHABOK_API_URL=https://apihub2.chabokan.net/fa/api/v1/

لینوکس:

export CHABOK_API_URL=https://apihub2.chabokan.net/fa/api/v1/

دقت بفرمایید بعد از اجرا دستور بالا باید یکبار از ابتدا فرآیند دیپولی را انجام دهید.