Skip to main content

منبع گیت

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

برای آشنایی بیشتر با هم‌گیت می‌توانید مستند نحوه استفاده از هم‌گیت را مطالعه کنید. همچنین برای ساخت اپ از روی ریپوی گیت‌هاب پیشنهاد می‌کنیم مستند نحوه اتصال دارکوب به گیت‌هاب را مطالعه کنید.

انتخاب نوع اپ#

برای ساخت اپ از روی ریپو گیت، پس از انتخاب گزینه افزودن اپ، نوع منبع گیت را برای اپ خود انتخاب کنید.

انتخاب منبع گیت به عنوان نوع اپ

انتخاب محل استقرار ریپو#

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

توجه داشته باشید که برای بارگذاری پروژه خود روی هم‌گیت، می‌توانید پس از ساخت اکانت در کنسول هم‌روش، وارد هم‌گیت شوید و با کلیک روی گزینه «Sign in with Hamravesh» هم‌گیت خود را فعال کنید و سپس پروژه‌ی خود را روی هم‌گیت بارگذاری کنید.

انتخاب بین گیت‌لب و گیت‌هاب

حال در این مرحله لازم است اطلاعاتی درباره با ریپو و تنظیمات دیگر اپ وارد کنید که در ادامه به توضیح هر یک می‌پردازیم.

انتخاب ریپو

نام برنچ#

دارکوب این امکان را برای شما فراهم می‌کند که مشخص کنید که اپ شما از روی کدام برنچ ریپو ساخته شود. به صورت پیش‌فرض برنچ master برای ساخت اپ انتخاب شده است.

آدرس داکر فایل#

در این قسمت لازم است آدرس نسبی Dockerfile اپ داکری‌شده‌ی خود را وارد کنید (مثلا ./Dockerfile) به صورت پیش‌فرض، پوشه‌ی ریشه ریپوی شما به عنوان آدرس داکرفایل در نظر گرفته شده است.

info

برای یادگیری نحوه‌ داکری‌کردن اپ خود می‌توانید به صفحه داکری‌کردن اپ در Hacker Noon مراجعه کنید.

دیپلوی خودکار بعد از push کردن#

با فعال کردن این گزینه، با هر بار پوش کردن روی برنچ مشخص‌شده، اپ شما به صورت خودکار به‌روز‌رسانی می‌شود. در صورتی که میخواهید حتما به شکل دستی اپ را آپدیت کنید، این گزینه‌ را غیرفعال کنید.

تکمیل اپ#

پس از انتخاب ریپو لازم است تنظیمات دیگری برای اپ خود تعیین کنید که در ادامه به توضیح هر کدام می‌پردازیم.

انتخاب پلن#

در این مرحله لازم است که پلن مورد نظر خود را انتخاب کنید. در صورتی که نیاز‌ داشته باشید تا مقادیر دلخواه خود را برای cpu و ‌ram تعیین کنید، می‌توانید از پلن دلخواه استفاده کنید.

تکمیل اپ#

در مرحله آخر لازم است اطلاعات اپ تکمیل شود. تذکر: لازم به ذکر است که تمامی فیلد‌هایی که وارد کردن آن‌ها ضروری است در بخش «اطلاعات عمومی» دریافت می‌شود و سایر بخش‌ها تنظیمات دلخواه را دریافت می‌کنند.

اطلاعات عمومی#

تنظیمات عمومی اپ در دارکوب هم‌روش

نام اپ#

نام اپ شناسه‌ای است که در هر فضای نامی (Namespace) اپ شما را به صورت یکتا مشخص می‌کند و در صفحه اصلی دارکوب در لیست اپ‌ها نمایش داده می‌شود.

منطقه (Zone)#

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

فضای نامی (Namespace)#

هر کاربر تعدادی فضای نامی یا namespace در اختیار دارد که توسط آن می‌تواند پروژه‌ها و نسخه‌های مختلف یک اپ (staging, production و …) را دسته‌بندی نماید.

استفاده از فضای‌ نامی قابلیت‌های متعددی برای شما فراهم می‌کند که یکی از آن‌ها امکان ایزوله کردن پروژه‌ها و اپ‌ها مختلف از یکدیگر است. در حال حاضر پس از انجام فرایند آنبوردینگ یک فضای نامی برای شما ایجاد می‌شود. در صورت نیاز به فضاهای نام بیشتر لازم است درخواستی در پشتیبانی ثبت نمایید.

منابع#

در صورتی که پلن «دلخواه» را انتخاب کرده باشید، لازم است در این قسمت میزان RAM و CPU مورد نیاز خود را مشخص کنید. توجه داشته باشید که واحد مموری مگابایت و واحد پردازنده mili core در نظر گرفته شده است. یعنی برای تخصیص 1 core پردازنده به اپ خود لازم است عدد 1000 را وارد کنید.

Replicas#

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

پورت سرویس#

اگر اپ شما بر روی پورت خاصی در حال listen است در این قسمت می‌توانید تنظیمات مربوطه را وارد کنید. در صورت نیاز به تعریف بیش از یک پورت می‌توانید از طریق تب «پورت‌ها» آن‌ها را تعریف کنید.

caution

دقت کنید که پردازه روی این پورت در حال listen کردن باشد. در صورت نیاز به مستندات داکر ایمیج پایه مراجعه کنید.

تعریف چند پورت#

در صورتی که اپ شما چند پورت دارد، می‌توانید در تب پورت‌ها ‌آن‌ها را تعریف کنید. پورت شما می‌تواند از دو نوع UDP یا TCP باشد.

همچنین در صورت نیاز به دسترسی به اپ از خارج از کلاستر، می‌توانید آی‌پی اپ خود را به خارج از کلاستر expose کنید.

تعریف چند پورت
تعریف چند پورت
caution

توجه داشته باشید که اگر برای اپ خود هاست تعریف کرده باشید، لازم است تا نام یکی از پورت‌های خود را http قرار دهید.

expose شدن آی‌پی و در دسترس قرار‌گرفتن آدرس خارجی ممکن است مدت کوتاهی به طول بیانجامد. در صورتی که پس از ساخت اپ، در تب پورت آدرس خارجی را مشاهده نکردید، مدتی صبر کرده و سپس صفحه را رفرش کنید.

داکر و سرویس#

سرویس داکر

دستور اجرایی#

در این قسمت دستور اجرایی مورد نظر برای اجرای ایمیج برنامه باید وارد شود (معادل Command).

ورودی ها#

اگر دستور اجرایی در بخش فوق دارای ورودی باشد مقادیر آن باید در این قسمت وارد شود (معادل Args). در صورت نیاز به اجرای دستورهای پیچیده می‌توانید از چیزی شبیه زیر استفاده کنید:

دستور اجرائی: /bin/sh -c

ورودی‌ها: command1 && command2

Health Check Path#

با استفاده از این مقدار آماده/سالم بودن سرویس مورد ارزیابی قرار می‌گیرد. لازم است شما endpoint ای برای سرویس خود ایجاد کنید که اگر به ازای درخواستی به آن، status_code 200 برگرداند، مشخص کننده‌ی صحت عملکرد سرویس شما می‌باشد. این آدرس باید به شکل نسبی داده شود مثلا /is_ready. در صورت علاقه صفحه مستندات کوبرنتیز مربوط را مطالعه کنید.

آدرس هاست#

آدرس هاست در دارکوب

آدرس زیردامنه دارکوب#

در صورتی که برای تست اپ خود به یک دامنه موقت نیاز دارید می‌توانید اپ خود را در زیردامنه darkube.app مستقر کنید.

آدرس هاست (Host Address)#

در این قسمت آدرس‌ یا آدرس‌های هاست مربوط به اپ را مشخص می‌کنید.

ساخت گواهی SSL#

با فعال کردن این قسمت یک گواهی TLS برای دامنه‌های شما ایجاد می‌شود.

HTTPS Redirect#

با فعال کردن این ويژگی در صورتی که به آدرس http اپ درخواستی ارسال شود، با جواب 301 به نسخه‌ی https ریدایرکت می‌شود.

فعال‌سازی احراز هویت (http basic auth)#

در صورتی‌که می‌خواهید برای ورود به دامنه‌های اپ خود احراز هویت تعیین کنید، می‌توانید «فعالسازی احراز هویت» را فعال کنید و برای دامنه‌های خود نام‌کاربری و رمزعبور تعیین کنید. فعالسازی احراز هویت در تمامی دامنه‌ها اعمال خواهد شد.

Enviornment Variables (متغیر‌های محیطی)#

متغیرهای محیطی در اپ دارکوب

اگر اپ شما در زمان اجرا به متغیر‌های محیطی (Environment variable) خاصی نیاز دارد در این قسمت می‌توانید آن‌ها را تعریف کنید. همچنین می‌توانید برای سهولت، متغیر‌های محیطی را در قالب json وارد کنید.

متغیرهای مشترک#

با استفاده از قابلیت متغیرهای مشترک می‌توانید برای چند اپ یک مجموعه متغیرهای محیطی یکسان تعریف کنید و از آن‌ها در سایر اپ‌ها استفاده کنید. توجه داشته باشید که متغیرهای محیطی در زمان اجرا در اختیار اپ قرار می‌گیرد. برای ایجاد یک فهرست از مقادیر مشترک باید اسم برای آن انتخاب کنید سپس به ازای هر کدام از آن‌ها مقدار key و value را وارد نمایید.