From a9defae4d9cf1d44b3d092c9cce84afdcdbfa7e7 Mon Sep 17 00:00:00 2001 From: Ali Najmabadi Date: Mon, 25 Nov 2024 10:41:42 +0330 Subject: [PATCH] docs: update liara.json page --- src/pages/paas/liarajson.mdx | 253 +++++++++++++++++++++++++++++++++++ 1 file changed, 253 insertions(+) diff --git a/src/pages/paas/liarajson.mdx b/src/pages/paas/liarajson.mdx index ec64982d..1180bcd8 100644 --- a/src/pages/paas/liarajson.mdx +++ b/src/pages/paas/liarajson.mdx @@ -609,4 +609,257 @@ docker`} به صورت پیش‌فرض، موقعیت build برنامه بر روی Iran، قرار دارد. +
+ +Cron job یک ابزار در سیستم‌عامل‌های لینوکس است که به شما این امکان را می‌دهد که برنامه‌ها یا اسکریپت‌ها را به صورت خودکار و در زمان‌های مشخص اجرا کنید. به عبارت ساده‌تر، با استفاده از cron job می‌توانید کارهایی مانند پشتیبان‌گیری، ارسال ایمیل یا اجرای اسکریپت‌ها را به صورت زمان‌بندی‌شده انجام دهید. +شما می‌توانید مانند شکل زیر، برای پلتفرم‌های زیر، کرون‌جاب‌های مدنظرتان را در فایل liara.json تعریف کنید: + + +
+ +{`{ + "cron": [ + "* * * * * curl http://localhost:3000/api/test" + ] +}`} + +
+
+ , + <> +
+ +{`{ + "cron": [ + "0 1 * * * cd $ROOT && php artisan your:command >> /dev/null 2>&1" + ] +}`} + +
+
+ , + <> +
+ +{`{ + "cron": [ + "0 1 * * * cd $ROOT && php update_price.php >> /dev/null 2>&1" + ] +}`} + +
+
+ , + <> +
+ +{`{ + "cron": [ + "python3 migrate.py >> /dev/null 2>&1" + ] +}`} + +
+
+ , + <> +
+ +{`{ + "cron": [ + "0 0 * * 0 cd $ROOT && python3 manage.py remove-old-emails >> /dev/null 2>&1" + ] +}`} + +
+
+ , + <> +
+ +{`{ + "cron": [ + "0 0 * * 0 cd $ROOT && python3 job1.py", + "0 0 * * 2 cd $ROOT && python3 job2.py" + ] +}`} + +
+
+ , + ]} +/> + +برای اطلاعات بیشتر، می‌توانید به صفحه مربوطه در هر پلتفرم، مراجعه کنید. + +
+بررسی سلامت به این شکل کار می‌کند که شما یک دستور مشخصی را تعریف می‌کنید و لیارا در بازه‌های مشخص، این دستور را در استقرار جدید شما اجرا می‌کند. اگر نتیجه موفقیت‌آمیز باشد، استقرار شما موفق در نظر گرفته می‌شود؛ در غیر این‌صورت، استقرار جدید شما، ناموفق تلقی خواهد شد. + +برای ایجاد این تست، کافیست تا در فایل liara.json محتوای زیر را، قرار دهید: + +
+
+ +{`{ + "healthCheck": { + "command": "CMD curl --fail http://localhost:3000 || exit 1", + "interval": 30, + "timeout": 15, + "retries": 2, + "startPeriod": 5 + } +}`} + +
+
+برای اطلاعات بیشتر در مورد این دستور، می‌توانید به مستندات مربوطه مراجعه کنید. + +
+ +دیسک‌ها قابلیتی در لیارا هستند که عملکردی شبیه به Volumeها در داکر دارند +و برای ذخیره‌سازی دائم اطلاعات یا تغییرات جدید، به کار می‌روند؛ +شما می‌توانید در هر پلتفرمی، مانند شکل زیر، +برنامه خود را در مسیر مدنظرتان، به دیسک متصل کنید: + +
+
+ +{`{ + "disks": [ + { + "name": "media", + "mountTo": "/uploads/media" + } + ] +}`} + +
+
+ +برای اطلاع بیشتر در مورد دیسک‌ها، می‌توانید به مستندات مربوط به اتصال به دیسک در هر پلتفرم، مراجعه کنید. + +
+ +هر پلتفرم در لیارا، در فایل liara.json، در کنار تمامی فیلدها و ویژگی‌های مشترک، +قابلیت‌ها و فیلدهای مخصوص به خودش را نیز، دارد که به شما امکان می‌دهد شخصی‌سازی‌های خیلی بیشتری +را بر روی پروژه‌های خود اعمال کنید. +در ادامه، یک مثال از تمامی فیلدهای مخصوص هر پلتفرم (فارغ از نتیجه)، برای‌تان آورده شده است: + + +
+ +{`{ + "laravel":{ + "npmMirror": true, + "installDevDependencies": true, + "configCache": true, + "routeCache": true, + "buildAssets": true, + "ssr": true + } +} +`} + +
+
+ , + <> +
+ +{`{ + "django": { + "collectStatic": false, + "compileMessages": true, + "modifySettings": false, + "geospatial": true + } +}`} + +
+
+ , + <> +
+ +{`{ + "flask": { + "appModule": "server:app" + } + }`} + +
+
+ , + <> +
+ +{`{ + "dotnet": { + "finalDllName": "MyProjectName", + "csprojectFile": "path/to/folder/my.csproj" + } +}`} + +
+
+ , + <> +
+ +{`{ + "react": { + "sourceMap": false + } +}`} + +
+
+ , + <> +
+ +{`{ + "angular": { + "sourceMap": false + } +}`} + +
+
+ , + <> +
+ +{`{ + "build": { + "dockerfile": "./Dockerfile", + "cache": false, + "args": ["APP_VERSION=2.0.0"] + }, + + "docker": { + "timezone": "America/Los_Angeles" + }, + + "args": [ + "sh", + "-c", + "sleep 10 && /entrypoint.sh run" + ] +}`} + +
+
+ , + ]} +/> + +برای اطلاعات بیشتر در مورد هر پلتفرم، به صفحه استقرار برنامه آن، مراجعه کنید. + \ No newline at end of file