Skip to content

Commit

Permalink
add cron job docs to nextjs
Browse files Browse the repository at this point in the history
  • Loading branch information
A-Najmabadi committed Aug 11, 2024
1 parent 8a1c493 commit c48ca4b
Show file tree
Hide file tree
Showing 3 changed files with 80 additions and 1 deletion.
4 changes: 4 additions & 0 deletions src/components/Sidebar/data.js
Original file line number Diff line number Diff line change
Expand Up @@ -1195,6 +1195,10 @@ export default {
title: "استفاده از Hookها",
link: "/paas/nextjs/how-tos/use-hooks"
},
{
title: "تنظیم Cron Job",
link: "/paas/nextjs/how-tos/set-cron-job"
},
{
title: "مشاهده نسخه NodeJS",
link: "/paas/nextjs/how-tos/choose-version"
Expand Down
75 changes: 75 additions & 0 deletions src/pages/paas/nextjs/how-tos/set-cron-job.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
import Layout from "@/components/Layout";
import Button from "@/components/Common/button";
import Section from "@/components/Common/section";
import Alert from "@/components/Common/alert";
import Tabs from "@/components/Common/tab";
import Step from "@/components/Common/step";
import Card from "@/components/Common/card";
import Important from "@/components/Common/important";
import Highlight from "react-highlight";
import Link from "next/link";
import NextPage from "@/components/Common/nextpage";

import Head from "next/head";

<Layout>
<Head>
<title>مستندات تنظیم Cron Job در NextJS - لیارا</title>
</Head>
# تنظیم Cron Job
<hr className="mb-2" />

Cron job یک وظیفه زمان‌بندی شده در سیستم‌عامل‌های Unix و Linux است که به کاربران اجازه می‌دهد تا اسکریپت‌ها یا دستورات را در فواصل زمانی منظم اجرا کنند. این ابزار به خصوص برای انجام وظایف دوره‌ای مثل پشتیبان‌گیری، ارسال ایمیل، اجرای اسکریپت‌های نگهداری سیستم، یا به‌روزرسانی اطلاعات مفید است.
<div className="h-4" />

برای تنظیم یک Cron Job در NextJS
کافیست تا در مسیر اصلی پروژه، یک فایل به نام <Important>liara.json</Important> ایجاد کنید و Cron Jobهای مد نظر خود را در
آرایه‌ای به نام <Important>cron</Important>، تنظیم و پیکربندی کنید.
به عنوان مثال،
فرض کنید که یک اسکریپت به نام <Important>backup</Important> در فایل <Important>package.json</Important> تعریف کرده‌اید
و قصد دارید که در یک زمان مشخص، این اسکریپت اجرا شود و یک فایل پشتیبان از یک قسمت خاص برای شما تهیه شود؛ برای این کار کافیست تا قطعه کد زیر را به فایل
<Important>liara.json</Important> اضافه کنید:
<div className="h-2" />
<div dir="ltr">
<Highlight className="json">
{`{
"cron": [
"0 1 * * * npm run backup"
]
}`}
</Highlight>
</ div>
<div className="h-2" />

<Section id="cron-format" title="فرمت زمان‌بندی Cron Job" />
در نظر داشته باشید که فرمت زمان‌بندی Cron به صورت زیر است:
<div className="h-2" />
<div dir="ltr">
<Highlight className="scss">
{`* * * * *
│ │ │ │ │
│ │ │ │ └── روزهای هفته (۰-۷) (۰ و ۷ هر دو نشان‌دهنده یکشنبه هستند)
│ │ │ └──── ماه‌ها (۱-۱۲)
│ │ └────── روزهای ماه (۱-۳۱)
│ └──────── ساعت‌ها (۰-۲۳)
└────────── دقیقه‌ها (۰-۵۹)
`}
</Highlight>
</ div>
<div className="h-2" />

<Alert variant="success">
<p>
با کمک <a href="https://crontab.guru/" className="blue-link">این</a> وب‌سایت، می‌توانید زمان دلخواه خود را، بسازید.
</p>
</Alert>


پس از تنظیم cron jobها و استقرار مجدد برنامه، می‌توانید لیست آن‌ها را در قسمت **تنظیمات برنامه** خود، مشاهده بفرمایید:
<div className="h-2" />
<img src="https://files.liara.ir/liara/docs/see-cron-jobs.png" alt="see cron jobs on liara" />


<NextPage next="./choose-version" />

</Layout>
2 changes: 1 addition & 1 deletion src/pages/paas/nextjs/how-tos/use-hooks.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -79,5 +79,5 @@ echo "Pre-start script for NextJS finished."`}
</div>
<div className="h-2" />

<NextPage next="./choose-version"/>
<NextPage next="./set-cron-job"/>
</Layout>

0 comments on commit c48ca4b

Please sign in to comment.