پیشنیازهای این آموزش
- منبع برنامه، فرمان اجرا و پورت آن را مشخص کنید.
- اگر برنامه داده نگه میدارد، پیش از انتشار درباره دیتابیس و دیسک پایدار تصمیم بگیرید.
آموزش مرحلهبهمرحله
- از صفحه پروژهها ساخت اپلیکیشن را باز کنید و روش منبع را انتخاب کنید.
- برای پوشه یا
ZIP، نتیجه تشخیص خودکار را بررسی کنید؛ برایGitمخزن و شاخه و برایImageنشانی و نسخه را مشخص کنید. - ناحیه و پلن را انتخاب کنید و تنظیمات اجرا و متغیرهای لازم را کامل کنید.
- هزینه تمام منابع همراه پروژه را در خلاصه بررسی کنید و استقرار را تأیید کنید.
- نسخه را تا پایان ساخت و آمادهشدن دنبال کنید؛ آدرس عمومی و عملکرد اصلی برنامه را آزمایش کنید.

توضیحات تکمیلی
روش ساخت را انتخاب کنید
در داشبورد خالی میتوانید پروژه خودتان را انتخاب کنید یا ابتدا «پروژه نمونه» را اجرا کنید تا کل مسیر را بدون آمادهکردن سورس ببینید. در صفحه «ساخت اپلیکیشن» پوشه پروژه یا ZIP، Docker Image عمومی، GitHub/GitLab، اپ آماده یا Paasta CLI را انتخاب کنید. هنگام آپلود سورس نیازی نیست نوع Build را حدس بزنید؛ Compose، Dockerfile یا فریمورک پروژه خودکار تشخیص داده میشود.
نام یکتا وارد کنید
نام فقط شامل حروف انگلیسی، عدد و خط تیره است. دامنه پیشفرض از ناحیه انتخابی ساخته میشود؛ برای نمونه project.ir1.paasta.app. قبل از Build، یکتا بودن نام و دامنه بررسی میشود.
منبع پروژه را بفرستید
پوشه پروژه را مستقیم انتخاب کنید تا مرورگر آن را بستهبندی کند، یا یک ZIP حداکثر ۲۵ مگابایتی بفرستید. در حالت پوشه، .git، node_modules، خروجیهای Build، فایلهای env و کلیدهای خصوصی خودکار حذف میشوند؛ نام پوشه نیز نام پیشنهادی پروژه خواهد بود.
پلن و پرداخت را انتخاب کنید
در پلن ماهانه، هزینه دوره هنگام ساخت کسر میشود. در PAYG باید حداقل اعتبار هزینه هفت روز موجود باشد؛ هزینه اجرا هر پنج دقیقه ثبت میشود.
ناحیه استقرار را انتخاب کنید
فقط کلاسترهایی نمایش داده میشوند که مدیر پلتفرم اتصال، Node، StorageClass، IngressClass و Registry آنها را تأیید و برای کاربران منتشر کرده باشد. Build، اجرا، لاگ و عملیات بعدی پروژه همگی در همان کلاستر انجام میشوند.
بررسی رایگان را اجرا کنید
دکمه «بررسی و ادامه» استک، Dockerfile، پورت، Health Check و خطاهای ساختار پروژه را بدون کسر اعتبار نمایش میدهد. اسکریپت Python که وبسرور ندارد باید بهصورت Worker ساخته شود؛ پاستا آن را پیش از Build تشخیص میدهد تا منتظر timeout سلامت نمانید.
استقرار را تأیید کنید
Build در Kubernetes اجرا و Image در Registry ذخیره میشود. سپس Deployment، Service، Ingress و دامنه HTTPS ساخته میشوند؛ بستن مرورگر فرایند را متوقف نمیکند.
انتخاب فایلهای ارسالی CLI
در Paasta CLI نسخه 0.23.0 و بالاتر، فایل .paastaignore را در ریشهٔ پوشهای که دیپلوی میکنید بسازید. اگر این فایل وجود نداشته باشد، قواعد .gitignore همان پوشه و زیرپوشههایش خوانده میشوند. حتی یک .paastaignore خالی هم جایگزین همهٔ این قواعد Git میشود. برای بهروزرسانی CLI، فرمان paasta update را اجرا کنید.
# .paastaignore
*.log
docs/
tests/
coverage/
.env*
!.env.example
الگوهای *، **، ? و [a-z] پشتیبانی میشوند. خطی که با # شروع شود توضیح است و ! فایل را دوباره مجاز میکند؛ برای نامی که با این نشانهها شروع میشود از بکاسلش استفاده کنید. /docs/ فقط پوشهٔ docs در ریشه و docs/ پوشههای همنام در هر عمق را حذف میکند. برای برگرداندن یک فایل، پوشهٔ والدش هم باید مجاز باشد؛ مثلاً docs/* و سپس !docs/required.json.
این قواعد روی همهٔ فایلهای پوشه اعمال میشوند، حتی اگر در Git ثبت شده باشند. قواعد Git بیرون از پوشهٔ ارسالی، تنظیمات سراسری Git و .git/info/exclude خوانده نمیشوند. فقط .paastaignore ریشه خوانده میشود. فایل .dockerignore فهرست آپلود CLI را تعیین نمیکند. فایلهای لازم برای ساخت، مانند lockfile یا خروجی آمادهٔ موردنیاز برنامه، باید در پیشنمایش حاضر باشند.
پیشنمایش بدون آپلود
paasta deploy . --dry-run
paasta deploy . --dry-run --jsonپیشنمایش فهرست فایلهای سورس، حجم پیش از فشردهسازی، فایلهای قواعد و نام فایلهای محیطیِ قابل ورود را نشان میدهد. به ورود به حساب نیاز ندارد، به سرور وصل نمیشود و منبعی ایجاد نمیکند. این فرمان فقط برای پوشهٔ محلی است و با گزینههای --git و --image استفاده نمیشود.
فایل محیطیِ نادیدهگرفتهشده خوانده یا ارسال نمیشود. اگر .gitignore شما .env را حذف کرده است، متغیرهای لازم را در تنظیمات پروژه ثبت کنید یا با .paastaignore اجازهٔ خواندن فایل موردنظر را بدهید. فایل .env مجاز داخل ZIP نمیرود، اما مقدارهایش هنگام دیپلوی جداگانه بهعنوان متغیر محیطی ارسال میشوند. پیشنمایش مقدار متغیرها را نشان نمیدهد. حذف ثابت پوشههایی مانند .git و node_modules، فایلهای .pem و .key و پیوندهای نمادین با استثناهای ignore لغو نمیشود.
نتیجه را چگونه بررسی کنید؟
نسخه فعال و آدرس HTTPS در صفحه پروژه دیده میشوند. آمادهشدن سرویس را همراه با نتیجه واقعی برنامه بررسی کنید.
اگر به مشکل خوردید
- اگر اعتبار کافی نیست، افزایش اعتبار را از همان فرم انجام دهید و پیشنویس را بعد از بازگشت بررسی کنید.
- فایلهای محلی برنامه بدون دیسک پایدار محل مطمئنی برای داده دائمی نیستند.