استقرار Rust در کنسول پاستا؛ اجرای نمونه رسمی، تنظیم فرمان اجرا، پورت و بررسی سلامت، نگهداری داده و رفع خطاهای رایج.
پیش از شروع
- حساب فعال و دسترسی ساخت پروژه در فضای کاری داشته باشید. از داده آزمایشی استفاده کنید.
- نام پروژه، ناحیه، منابع و هزینه را پیش از تأیید نهایی بررسی کنید. کلیدها و رمزها را فقط در تنظیمات خصوصی کنسول وارد کنید.
نمونه و فایلهای لازم
مشاهده فایلهای نمونه Rust؛ فایلهای اصلی: Cargo.toml و src/main.rs. فرمان زیر کل مخزن را دریافت میکند؛ پوشه این آموزش rust است.
git clone https://github.com/Paasta-Cloud/examples.git
cd examples/rustنمونه از TcpListener استاندارد استفاده میکند، PORT را میخواند و روی 0.0.0.0 گوش میدهد.
Cargo.lock را در برنامه واقعی ثبت کنید. برای وابستگیهای native، سازگاری کتابخانههای ساخت و تصویر اجرا را بررسی کنید.
ساخت پروژه از کنسول
- در کنسول «ساخت اپلیکیشن» را باز کنید و منبع
Gitیا آپلود سورس را انتخاب کنید. - برای
Git، مخزنexamplesو شاخهmainرا انتخاب کنید و پوشه پروژه درMonorepoراrustقرار دهید. برای آپلود، فقط محتوای همان پوشه را بفرستید؛node_modules،.venvو خروجی ساخت محلی لازم نیستند. - نتیجه بررسی سورس را بخوانید. اگر مخزن را برای پروژه خودتان
forkکردهاید، اتصالGitباید به همان مخزن دارای تغییرات اشاره کند. - در تنظیمات اجرا، پورت 3000 و مسیر سلامت
/healthرا بررسی کنید. فرمان اجرا و متغیرهای موردنیاز را با جدول زیر تطبیق دهید. - پلن، ناحیه، دیسک و هزینه منابع را مرور کنید و ساخت را تأیید کنید. مراحل ساخت و اجرا را در صفحه استقرار دنبال کنید.

فرمانها و تنظیمات نمونه
| تنظیم | مقدار |
|---|---|
| ساخت یا نصب | cargo build --release |
| اجرا | /app؛ فایل ساختهشده در تصویر |
| پورت داخلی | 3000 |
| مسیر سلامت | /health |
فرمان ساخت را برای شناخت مراحل میبینید؛ پاستا آن را از سورس تشخیص میدهد. override فرمان اجرا فقط وقتی لازم است که فرمان پروژه با نمونه فرق داشته باشد. پورت داخلی باید با پورت واقعی برنامه یکسان باشد؛ پورت رایانه محلی معیار نیست.
بررسی نتیجه
دامنه HTTPS پروژه را باز کنید. نتیجه مورد انتظار نمونه: Rust is running on Paasta.
مسیر /health باید پاسخ موفق بدهد. در لاگ اجرا خطای تکرارشونده نباشد؛ بعد از آمادهشدن برنامه، یک درخواست واقعی و یک refresh را هم بررسی کنید.
curl -i https://YOUR_PROJECT.paasta.app/healthآدرس بالا نمونه است؛ دامنه واقعی را از صفحه پروژه کپی کنید، چون ممکن است دامنه ناحیه داشته باشد.
خطاهای رایج Rust
error while loading shared libraries
کتابخانه موردنیاز اجرا باید در مرحله نهایی Dockerfile هم نصب شده باشد.
address already in use یا سلامت ناموفق
پورت سرویس و مقدار PORT را هماهنگ کنید و از اجرای همزمان دو سرور روی همان پورت بپرهیزید.
انتشار نسخه بعدی و داده ماندگار
برای نسخه بعدی از همان پروژه استفاده کنید. فایل موقت داخل برنامه ماندگار نیست؛ داده مهم را در دیتابیس یا دیسک پایدار نگه دارید و قبل از تغییر ساختار داده بکاپ بگیرید. Rollback نسخه برنامه، migration یا داده دیتابیس را خودکار به عقب برنمیگرداند.