diff --git a/src/components/Sidebar/data.js b/src/components/Sidebar/data.js index 4c95b687..231d2fa4 100644 --- a/src/components/Sidebar/data.js +++ b/src/components/Sidebar/data.js @@ -40,14 +40,10 @@ import { GoPulse, GoGitPullRequest, GoPlug, - - - - - - - - + GoLocation, + GoGitCompare, + GoXCircle, + GoPaperAirplane, } from "react-icons/go"; // ICONS https://react-icons.github.io/react-icons/icons/go/ @@ -290,27 +286,27 @@ export default { { title: "پلن‌های برنامه", icon: , - link: "/paas/details/" + link: "/paas/details/plans/about" }, { title: "شبکه خصوصی", icon: , - link: "/paas/details/" + link: "/paas/details/private-network" }, { title: "آی‌پی ثابت", icon: , - link: "/paas/" + link: "/paas/details/static-ip" }, { title: "فایل‌سیستم", icon: , - link: "/paas/" + link: "/paas/details/file-system" }, { title: "رویدادها", icon: , - link: "/paas/" + link: "/paas/details/events" }, { title: "گزارشات", @@ -354,60 +350,24 @@ export default { }, { title: "تنظیم موقعیت build", - icon: , - link: "/paas//getting-started" + icon: , + link: "/paas/" }, { title: "تغییر پلن در برنامه", - icon: , - link: "/paas//getting-started" + icon: , + link: "/paas/" }, { title: "حذف یک برنامه", - icon: , - link: "/paas//getting-started" + icon: , + link: "/paas/" }, { title: "پروکسی معکوس (reverse)", - icon: , - link: "/paas//getting-started" - }, - { - hr: true - }, - { - title: "جزئیات پلتفرم", - icon: , - link: "/" - }, - { - title: "مدیریت دیسک‌", - icon: , - link: "/" - }, - { - title: "مدیریت دامنه‌", - icon: , - link: "/" - }, - { - title: "قابلیت CI/CD", - icon: , - link: "/" - }, - { - hr: true - }, - { - title: "به‌روزرسانی پلتفرم", - icon: , - link: "/" + icon: , + link: "/paas/" }, - { - title: "انتقال پلتفرم", - icon: , - link: "/" - } ], nodejs: [ diff --git a/src/pages/paas/details/about.mdx b/src/pages/paas/details/about.mdx index c2d75642..cdbfa03d 100644 --- a/src/pages/paas/details/about.mdx +++ b/src/pages/paas/details/about.mdx @@ -11,177 +11,192 @@ import Link from "next/link"; import PlatformIcon from "@/components/Common/icons"; import { - GoTrophy, - - - GoContainer, + GoHome, GoDatabase, + GoContainer, GoRocket, - GoServer, GoMail, + GoServer, + GoTerminal, GoGlobe, - GoArrowLeft, + GoCode, + GoBrowser, + GoArrowRight, + GoInfo, + GoNote, + GoCodespaces, + GoWorkflow, + GoPackageDependents, + GoSync, + GoPerson, + GoTelescope, + GoFlame, + GoPackageDependencies, + GoProjectTemplate, + GoZap, + GoFileSymlinkFile, + GoPackage , + GoBug, + GoPaperclip, + GoMegaphone, + GoCpu, + GoShieldLock, + GoNumber, + GoFileBinary, + GoEye, + GoGraph, + GoKey, + GoLog, + GoEyeClosed, + GoPulse, + GoGitPullRequest, + GoPlug, + GoLocation, + GoGitCompare, + GoXCircle, + GoPaperAirplane, } from "react-icons/go"; -# سرویس پلتفرم لیارا +# ویژگی‌های یک پلتفرم در لیارا
- -
- -یک PaaS (یا Platform as a Service) به شما کمک می‌کند تا برنامه‌ها و وب‌سایت‌های خود را بسازید و اجرا کنید بدون اینکه نگران مدیریت سرورها و زیرساخت‌های فنی باشید. - -
-لیارا از جمله اولین سرویس‌های میزبانی ابری ایرانی است که در زمینه ارائه خدمات مربوط به پلتفرم‌های مختلف، پیش‌تاز است. در حال حاضر، لیارا، پلتفرم‌های زیر را به صورت مستقیم ارائه می‌دهد: - - -
-
- {[ - { alt: 'nodejs', platform: 'NodeJS', link: "./nodejs/getting-started" }, - { alt: 'next', platform: 'NextJS', link: "./nextjs/getting-started" }, - { alt: 'laravel', platform: 'Laravel', link: "./laravel/getting-started" }, - { alt: 'php', platform: 'PHP', link: "./related-apps/nuxtjs" }, - { alt: 'django', platform: 'Django', link: "./related-apps/fastify" }, - { alt: 'flask', platform: 'Flask', link: "./related-apps/hapi" }, - { alt: 'netcore', platform: 'NET.', link: "./related-apps/remix" }, - { alt: 'HTML5', platform: 'Static', link: "./related-apps/strapi/starter" }, - { alt: 'react', platform: 'React', link: "./related-apps/svelte" }, - { alt: 'angularjs', platform: 'Angular', link: "./related-apps/svelte-kit" }, - { alt: 'vue', platform: 'Vue', link: "./related-apps/svelte-kit" }, - { alt: 'docker', platform: 'Docker', link: "./related-apps/svelte-kit" }, - ].map(item => - - -
-
- -
-

- {item.platform} -

-
- -
- - )} -
- -
-اگر که در حال حاضر، لیارا از پلتفرم مورد نظر شما به صورت مستقیم پشتیبانی نمی‌کند؛ جای نگرانی نیست! شما می‌توانید با استفاده از سرویس Docker لیارا برنامه‌های خود را به سرعت و با بیشترین بازدهی، مستقر کنید؛ در ادامه مستندات برخی از پلتفرم‌های مورد استفاده، آمده است: -
- -
- {[ - { alt: 'go', platform: 'Golang', link: "" }, - { alt: 'docker', platform: 'Spring Boot', link: "" }, - { alt: 'docker', platform: 'Ruby On Rails', link: "" }, - { alt: 'docker', platform: 'Rust', link: "" }, - { alt: 'python', platform: 'Pure Python Apps', link: "" }, - { alt: 'fastapi', platform: 'Fast API', link: "" }, - { alt: 'docker', platform: 'Play Framework', link: "" }, - { alt: 'python', platform: 'Pyramid', link: "" }, - ].map(item => - - -
-
- -
-

- {item.platform} -

-
- -
- - )} -
- - -
- -
-
- {[ +لیارا همواره سعی داشته است که با +ارائه یک رابط کاربری آسان و همه‌منظوره، نیازهای کاربران خود را تا حد زیادی در خود صفحه کنسول، شناسایی و بر طرف کند. اما گاهاً ممکن است که در برخی از موارد، دچار ابهام شوید و به دنبال پاسخی +برای سوالات خود، باشید. +از این رو، در ادامه، تمامی جزئیات مربوط به پلتفرم برای شما آماده شده‌است تا با مطالعه آن‌ها، دانش شما، بیش از پیش، ارتقا یابد: + +
+ +
+ {[ + { + title: "پلن‌های برنامه", + icon: , + desc: " آشنایی با پلن‌های نرم‌افزاری و پلن‌های سخت‌افزاری یک پلتفرم", + link: "./plans/about", + }, { - text: 'آشنایی با جزئیات پلتفرم', - link: './details/about', + title: "شبکه خصوصی", + icon: , + desc: "امکان ارتباط امن و سریع بین برنامه‌ها و دیتابیس‌های مرتبط بدون محدودیت", + link: "./private-network", }, { - text: 'راه‌اندازی CI/CD بر روی پلتفرم', - link: './cicd/about', + title: "آی‌پی ثابت", + icon: , + desc: "امکان استفاده از آی‌پی ثابت اشتراکی در برنامه‌ها در لیارا برای ارسال درخواست به بانک‌ها و یا سرویس‌های مشابه", + link: "./static-ip", }, { - text: 'آشنایی با دیسک‌ها در پلتفرم', - link: './disks', + title: "فایل‌سیستم", + icon: , + desc: "فایل‌سیستم فقط خواندنی برای افزایش امنیت برنامه‌ها و قابل تغییر به writable برای اعمال تغییرات موقتی", + link: "./file-system", }, { - text: 'اتصال دامنه خریداری شده به پلتفرم', - link: './domains', + title: "رویدادها", + icon: , + desc: "مشاهده وضعیت نهایی استقرار برنامه‌ها برای بررسی تغییرات بر اساس زمان آخرین تغییرات", + link: "./events", }, { - text: 'به‌روزرسانی پلتفرم', - link: '', + title: "گزارشات", + icon: , + desc: "امکان بررسی و عیب‌یابی برنامه‌ها از طریق گزارشات نرم‌افزاری و سخت‌افزاری", + link: "/paas/", }, { - text: 'انتقال سرویس پلتفرم', - link: '', + title: "متغیرهای محیطی", + icon: , + desc: "امکان اضافه کردن متغیرهای شامل اطلاعات مهم و امنیتی به برنامه مانند اطلاعات مربوط به دیتابیس", + link: "/paas/", }, - ].map(item => - - -
-

- {item.text} -

-
- -
- - )} -
+ { + title: "رجیستری خصوصی و تاریخچه", + icon: , + desc: "آشنایی با نحوه ذخیره‌سازی کدهای برنامه، مدیریت برنامه و مشاهده استقرارهای قبلی، لاگ‌ها و ورژن‌ها", + link: "/paas/", + }, + { + title: "خط فرمان کنسول", + icon: , + desc: "امکان اتصال به سرور و اجرای دستورات موردنیاز زمانی که برنامه در حالت اجرا قرار دارد", + link: "/paas/", + }, + { + title: "نادیده گرفتن فایل‌ها", + icon: , + desc: "امکان نادیده گرفتن فایل‌های اضافی پروژه و عدم آپلود آن‌ها در حین عملیات استقرار", + link: "/paas/", + }, + { + title: "استقرار بدون اختلال", + icon: , + desc: "امکان در دسترس بودن برنامه برای همیشه بدون ذره‌ای قطعی یا اختلال در برنامه", + link: "/paas/", + }, + { + title: "بررسی سلامت", + icon: , + desc: "امکان بهره‌برداری از قابلیت استقرار بدون اختلال، با استفاده از قابلیت بررسی سلامت", + link: "/paas/", + }, + { + title: "تنظیم DNS Server", + icon: , + desc: "امکان تنظیم DNS بر روی کل سرور برنامه برای شکستن تحریم‌ها ", + link: "/paas/", + }, + { + title: "تنظیم موقعیت build", + icon: , + desc: "امکان تغییر موقعیت build برنامه‌ها برای نصب سریع‌تر وابستگی‌های برنامه یا وابستگی‌های شامل تحریم", + link: "/paas/", + }, + { + title: "تغییر پلن در برنامه", + icon: , + desc: "امکان تغییر پلن‌های یک برنامه در هر زمانی، با توجه به نیازهای یک برنامه", + link: "/paas/", + }, + { + title: "حذف یک برنامه", + icon: , + desc: "امکان حذف یک برنامه در لیارا، پس از اتمام روزهای طلایی استفاده از آن", + link: "/paas/", + }, + { + title: "پروکسی معکوس (reverse proxy)", + icon: , + desc: + "ارسال درخواست‌ها از سمت کاربران به سرور توسط پروکسی معکوس برای افزایش امنیت و امور دیگر", + link: "/paas/", + }, +].map(item => + +
+
+

+ {item.title} +

+
+ {item.icon} +
+
+

+ {item.desc} +

+
+ + + +
+ )} +
+ + -
-در ادامه، ده تا از پربازدیدترین مستندات مربوط به پلتفرم برای شما قرار گرفته است: -
    - {[ - { - text: 'انتخاب نسخه NodeJS', - href: './', - }, - { - text: 'استقرار برنامه با Prisma', - href: './how-tos/create-app', - }, - { - text: 'استقرار برنامه‌های Remix', - href: '/', - }, - { - text: 'خطای CORS', - href: '/', - }, - ].map((item, index) => ( -
  • - - {item.text} - - -
  • - ))} -
\ No newline at end of file diff --git a/src/pages/paas/details/events.mdx b/src/pages/paas/details/events.mdx new file mode 100644 index 00000000..bdad10c3 --- /dev/null +++ b/src/pages/paas/details/events.mdx @@ -0,0 +1,27 @@ +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 PlatformIcon from "@/components/Common/icons"; +import { + GoArrowLeft, +} from "react-icons/go"; + + +# رویدادها + +
+رویدادها، از وضعیت استقرار برنامه‌های ما خبر می‌دهند؛ در واقع رویدادها به ما می‌گویند که هم‌اکنون وضعیت نهایی برنامه‌ما چگونه است. شما می‌توانید وضعیت نهایی برنامه‌های خود را در قسمت رویدادها آن برنامه، بررسی کنید: + +
+tab of events on Liara +
+لیست رویدادها، بر اساس زمان آخرین تغییری که روی برنامه اعمال شده، مرتب شده‌اند. + + \ No newline at end of file diff --git a/src/pages/paas/details/file-system.mdx b/src/pages/paas/details/file-system.mdx new file mode 100644 index 00000000..672d7623 --- /dev/null +++ b/src/pages/paas/details/file-system.mdx @@ -0,0 +1,74 @@ +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 PlatformIcon from "@/components/Common/icons"; +import { + GoArrowLeft, +} from "react-icons/go"; + + +# فایل‌سیستم + +
+زمانی که یک برنامه جدید در لیارا ایجاد می‌کنید، به صورت پیش‌فرض، آی‌پی برنامه‌تان متغیر خواهد بود و ممکن است به صورت دوره‌ای این IP تغییر کند. از عمده دلایل این کار، افزایش سرعت، بهینه‌سازی و و بهبود مصرف منابع هست و این کار، هیچ مشکلی در برنامه شما، ایجاد نخواهد کرد. + +
+فایل‌سیستم به ساختار و نظمی اشاره دارد که برای ذخیره، سازماندهی، و دسترسی به داده‌ها استفاده می‌شود. این ساختار تعیین کننده نحوه‌ی ذخیره‌سازی فایل‌ها و دایرکتوری‌ها، سطح دسترسی به آنها، و روابط بین آنها است. +به عبارتی دیگر، فایل‌سیستم به کاربران و برنامه‌ها امکان می‌دهد تا با داده‌ها به صورت منظم و سازمان‌یافته، ارتباط برقرار کنند. + +
+فایل‌سیستم برنامه‌های لیارا به صورت پیش‌فرض، پس از ایجاد برنامه، ReadOnly یا فقط خواندنی است. به عبارتی، پس از استقرار برنامه‌ی خود در لیارا، فقط می‌توانید فایل‌ها و دایرکتوری‌ها را مشاهده کنید و امکان ایجاد هیچ‌گونه تغییری در آن‌ها وجود ندارد. +
+این موضوع باعث افزایش امنیت و اطمینان برنامه‌تان می‌شود. چرا که اگر نفوذگری قصد ایجاد تغییری ویران‌گر در فایل‌های پروژه‌تان را داشته باشد، با شکست روبرو می‌شود. +بهترین روش برای آپدیت برنامه و ایجاد تغییرات در آن، این است که تغییرات در لوکال انجام و سپس در لیارا مستقر شوند. با توجه به این که لیارا تنها تغییرات جدید را منتقل می‌کند، پس جای نگرانی برای زمان‌بر بودن استقرار مجدد نیز، وجود ندارد. + +
+با وجود ReadOnly بودن فایل سیستم برنامه‌های لیارا، دایرکتوری tmp/ از این قاعده مستثنی است. می‌توانید از این دایرکتوری که در همه پلن‌ها ارائه شده است و فضایی برابر 100 مگابایت دارد، برای ذخیره سازی لاگ‌ها، فایل‌های آپلودی موقتی و غیره استفاده کنید. +در نظر داشته باشید که خود برنامه و ماژول‌های مختلف درون آن، فایل‌های موقتی خود را درون این دایرکتوری، ذخیره خواهند کرد. +
+برای افزایش فضای این دایرکتوری، شما می‌توانید طبق مستندات ساخت دیسک، یک دیسک با فضای دلخواه ایجاد کنید؛ +سپس، طبق مستندات تعریف مسیر برای یک دیسک، دیسک خود را به مسیر tmp/ متصل کنید. + +
+اگر که دایرکتوری tmp/ پاسخ‌گوی نیاز شما نبود، چاره کار استفاده از دیسک‌ها در برنامه‌تان می‌باشد. به طور مثال قصد ذخیره فایل‌های کاربران را دارید و نمی‌خواهید به هیچ وجه این فایل‌ها را حذف کنید. در این شرایط به قسمت دیسک‌ها در برنامه‌تان مراجعه کنید و اقدام به ایجاد دیسک کنید. +
+ + +

+همچنین بخوانید: آشنایی با دیسک‌ها +

+
+ +
+همانطور که قبل‌تر گفته +شد، فایل‌سیستم لیارا به صورت پیش‌فرض، بر روی ReadOnly تنظیم شده است. اما شما می‌توانید به راحتی یک کلیک، فایل‌سیستم را از ReadOnly به writable تغییر دهید. + +برای این کار، کافیست وارد قسمت تنظیمات برنامه خود شوید و سپس گزینه فایل‌سیستم Read Only را غیر فعال کنید: +
+make an app writable +
+ +پس از انجام این‌کار، شما قادر خواهید بود تا تغییرات جدیدی را بر روی پروژه، اعمال کنید. +البته توجه داشته باشید که این تغییرات صرفاً موقتی هستند و پس از متوقف شدن برنامه، به هر دلیلی (از جمله ری‌استارت شدن، استقرار مجدد و یا خاموش شدن) ممکن است از بین بروند. و شما تا زمانی می‌توانید از این تغییرات استفاده کنید که برنامه‌تان روشن و در حال اجرا، باشد. + +
+پس از این‌که فایل‌سیستم لیارا را از حالت ReadOnly به Writable تغییر می‌دهید؛ به میزان 0.5 درصد کل فضای دیسک پلن انتخابی‌تان، فضا برای نوشتن به شما تعلق می‌گیرد؛ و شما می‌توانید تا سقف مقدار تعیین شده، داده جدید به برنامه خود در حالت Writable اضافه کنید. هرچند که این تغییرات موقتی هستند و دائمی نیستند. +
+ + +

+توجه داشته باشید که این فضای تخصیص داده‌شده، جدا از فضای گرفته‌شده سورس کد و دیسک (یا دیسک‌های) شما است +

+
+ +
+بر خلاف پلتفرم‌های دیگر در لیارا، که به صورت پیش‌فرض، فایل‌سیستم ReadOnly دارند؛ فایل‌سیستم پلتفرم‌های Docker و NextJS به صورت پیش‌فرض writable است و شما می‌توانید تغییرات موقتی را بدون انجام کار اضافی دیگری، در پروژه خود، اعمال کنید. + + \ No newline at end of file diff --git a/src/pages/paas/details/plans/about.mdx b/src/pages/paas/details/plans/about.mdx new file mode 100644 index 00000000..68a53bb5 --- /dev/null +++ b/src/pages/paas/details/plans/about.mdx @@ -0,0 +1,59 @@ +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 PlatformIcon from "@/components/Common/icons"; +import { + GoArrowLeft, + + +} from "react-icons/go"; + + +# تعرفه‌ها و پلن‌های برنامه در لیارا + +
+در لیارا، برای هر پلتفرم، به صورت کلی، دو دسته پلن وجود دارد: + +
+
+ {[ + { + title: "پلن سخت‌افرازی (شامل جزئیات مربوط به منابع سخت‌افزاری سرویس)", + link: "./hardware-plans" + }, + { + title: "بسته امکانات یا پلن نرم‌افزاری (شامل جزئیات مربوط به کیفیت، حداکثری‌ها و حداقلی‌های یک استقرار و پروژه)", + link: "./software-plans" + }, + ].map(item => + + +
+

+ {item.title} +

+
+ +
+ + )} +
+
+ما اهمیت کسب و کار شما را درک می‌کنیم. تمامی پلن‌های ارائه شده در لیارا، مطابق با استانداردهای جهانی و دارای بالاترین کیفیت ممکن می‌باشد. شما می‌توانید برای کسب اطلاعات بیشتر به صفحات اشاره شده، مراجعه کنید. + +
+ +

+همچنین بخوانید: توافق‌نامه سطح کیفیت خدمات (SLA) +

+
+ + + \ No newline at end of file diff --git a/src/pages/paas/details/plans/hardware-plans.mdx b/src/pages/paas/details/plans/hardware-plans.mdx new file mode 100644 index 00000000..5dd3bbc0 --- /dev/null +++ b/src/pages/paas/details/plans/hardware-plans.mdx @@ -0,0 +1,53 @@ +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 PlatformIcon from "@/components/Common/icons"; +import { + GoArrowLeft, +} from "react-icons/go"; + + +# آشنایی با پلن‌های سخت‌افزاری لیارا + +
+بی‌شک از مهم‌ترین مراحل ساخت یک پروژه، انتخاب منابع سخت‌افزاری مناسب و مورد نیاز یک برنامه است. گاهاً ممکن است که علت به خطا خوردن برنامه، سرعت پایین و بازدهی کم آن به خاطر انتخاب منابع سخت‌افزاری نامناسب باشد. پس توجه به این موضوع، حائز اهمیت است. +
+ +

+همچنین بخوانید: انتخاب بهترین پلن برای برنامه با استفاده از گزارشات سخت‌افزاری +

+
+
+see-hardware-plans +
+ +به صورت کلی، لیارا پلن‌های سخت‌افزاری زیر را ارائه می‌دهد: + +
+این پلن برای برنامه‌های سبک با تعداد کاربران بسیار کم؛ مناسب است. اگر که صرفاً می‌خواهید از برنامه خود، تست بگیرید و یا برنامه‌تان، نیازی به منابع سخت‌افزاری خاصی ندارد، بیشتر شامل داده‌های ثابت است و کمترین پردازش ممکن را انجام می‌دهد؛ می‌توانید از این پلن استفاده کنید. + +
+همانطور که از نام این پلن مشخص است. این پلن برای کسانی کاربرد دارد که قصد دارند برنامه خود را برای اولین بار در حالت production قرار بدهند. این پلن می‌تواند شروع خوبی برای کسب و کارتان باشد و برای برنامه‌ای با پردازش و کاربران کم، عالی است. + +
+اگر که در برنامه خود، تعداد کاربرانتان متوسط رو به بالا است و روزانه، تعداد پردازش‌هایی که برنامه انجام می‌دهد؛ در حد متوسط است. می‌توانید از این پلن استفاده کنید. این پلن، نسبت به هزینه‌ای که دارد، صرفه بیشتری دارد و مناسب مواقعی است که قصد ندارید برای خدمات مربوط به میزبانی ابری، هزینه سنگینی را پرداخت کنید. + +
+این پلن، همانند پلن زمین است و مزیتش نسبت به آن، این است که +برای پردازش‌های بیشتر، عملکرد بهتری از خود، ارائه می‌دهد و می‌تواند حجم بیشتری از داده‌های جدید را درون خود، ذخیره کند. + +
+بهترین پلن انتخابی برای کسب و کارهای نیمه حرفه‌ای و رو به بالا، پلن‌های مشتری و زحل، می‌باشند. این پلن‌ها می‌توانند حجم زیادی از درخواست کاربران را بدون کمترین کاهش سرعت، پردازش کنند؛ داده‌های زیادی درون خود ذخیره کنند و در نهایت، عملکرد خوبی را ارائه دهند. + +
+اگر که کسب و کارتان به حدی حساس است که حداقل کندی و اتلاف وقت، در آن +ممکن نیست؛ اگر که کاربران بسیار زیادی دارید؛ در حدودی که روزانه ده‌ها هزار درخواست به برنامه‌تان ارسال می‌شود؛ اگر که داده‌های بسیار زیادی برای پردازش دارید و سر و کارتان حوالی Big Data است؛ اگر که قصد دارید مدل‌های هوش مصنوعی خود را بسازید و ... . این دو پلن مناسب کار شما است. + + \ No newline at end of file diff --git a/src/pages/paas/details/plans/software-plans.mdx b/src/pages/paas/details/plans/software-plans.mdx new file mode 100644 index 00000000..5d3d8097 --- /dev/null +++ b/src/pages/paas/details/plans/software-plans.mdx @@ -0,0 +1,87 @@ +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 Table from "@/components/Common/table"; +import PlatformIcon from "@/components/Common/icons"; +import { + GoArrowLeft, +} from "react-icons/go"; + + +# آشنایی با بسته امکانات + +
+از جمله مهم‌ترین مراحل ساخت پروژه در لیارا، انتخاب بسته امکانات (پلن نرم‌افزاری) مناسب و متناسب با نیازهای پروژه، است. +در واقع در این بسته، شما می‌توانید امکانات نرم‌افزاری قابل ارائه در پروژه خود را مشاهده بفرمایید. +به صورت کلی، در لیارا، سه پلن برای بسته امکانات وجود دارد: +
+
    +
  • پایه
  • +
  • استاندارد
  • +
  • حرفه‌ای
  • +
+
+ +در ادامه، امکاناتی که بسته‌ها ارائه می‌دهند؛ آورده شده است. توجه داشته باشید که پلن پایه، حداقل‌ترین، و پلن حرفه‌ای، حداکثر امکانات را با بیشترین مقدار ممکن، ارائه می‌دهد: + +
+ + +
+
+ +
+
+ +
+
+ +
+
+ +software-plans + + \ No newline at end of file diff --git a/src/pages/paas/details/private-network.mdx b/src/pages/paas/details/private-network.mdx new file mode 100644 index 00000000..fd486c31 --- /dev/null +++ b/src/pages/paas/details/private-network.mdx @@ -0,0 +1,111 @@ +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 PlatformIcon from "@/components/Common/icons"; +import { + GoArrowLeft, +} from "react-icons/go"; + + +# شبکه خصوصی + +
+شبکه‌ی خصوصی در لیارا این امکان را فراهم آورده تا برنامه‌های شما با سرعت و امنیت بیشتری، بدون وجود محدودیت در پروتکل‌ها با هم ارتباط برقرار کنند. شما می‌توانید در لیارا، هر پروژه را در شبکه مخصوص خودش، مستقر کنید. + +
+شاید تا به حال بارها برای شما پیش آمده باشد که در حال کار بر روی چندین پروژه متفاوت باشید و پروژه‌های مختلفی را در پنل کاربری خود، مستقر کرده‌باشید. + +به عنوان مثال فرض کنید که یک پروژه وبسایت فروشگاه لوازم الکترونیکی دارید و پروژه دومتان یک اپلیکیشن اندرویدی است. هر کدام از این دو پروژه، پلتفرم و دیتابیس‌های خاص خود را دارند اما تشخیص اینکه هر برنامه یا دیتابیس مربوط به کدام پروژه است؛ ممکن است کمی برای شما وقت‌گیر و خسته کننده باشد. +
+ +لیارا این مشکل را برای شما حل کرده است؛ شما می‌توانید در لیارا، پروژه‌ها و برنامه‌هایی که به یکدیگر مرتبط نیستند و با هم هیچ ارتباطی ندارند را در شبکه‌های خصوصی متفاوت از هم، مستقر کنید. این کار نه تنها باعث سهولت و افزایش نظم در تشخیص پروژه‌ها می‌شود؛ بلکه به صورت کامل ارتباط دو برنامه غیرمرتبط با همدیگر را، قطع می‌کند. و اینگونه شما می‌توانید بدون کمترین نگرانی، پروژه‌های متعدد خود را در لیارا مستقر کنید. + +
+اگر که نیاز به شبکه خصوصی جدید دارید و قصد دارید که برنامه یا دیتابیس جدید خود را در شبکه جدیدی قرار بدهید؛ کافیست که در صفحات ساخت برنامه یا ساخت دیتابیس جدید، در قسمت شبکه خصوصی، بر روی گزینه ساخت شبکه خصوصی جدید کلیک کنید: + +
+create-private-network +
+سپس کافیست در قسمت نام شبکه، یک نام دلخواه برای شبکه خصوصی جدید انتخاب کنید و پس از آن بر روی گزینه ایجاد شبکه، کلیک کنید: +
+naming private network +
+ +اکنون شبکه شما ساخته شده و می‌توانید برنامه‌های مد نظر خود را در آن شبکه، ایجاد کنید. + +
+برای اینکه برنامه یا دیتابیس جدید را در شبکه خصوصی مدنظرخود قراردهید، کافیست تا در قسمت شبکه خصوصی، نام شبکه خود را انتخاب کنید تا برنامه یا دیتابیس، در آن مستقر شود و با برنامه‌ها و دیتابیس‌های دیگر موجود در آن شبکه، ارتباط برقرار کند. +
+set private network +
+ +پس از اینکه برنامه یا دیتابیس ساخته شد، در قسمت اطلاعات کلی آن، می‌توانید نام شبکه را نیز مشاهده بفرمایید: +
+app private network +
+ +
+فرض کنید که قصد دارید با استفاده از برنامه دومی، یک‌سری از اطلاعات موجود در برنامه اولیه خود را پردازش کنید. برای انجام این کار، شما باید یک ارتباط بین این دو برنامه ایجاد کنید. + +به عنوان مثال، فرض کنید که یک فروشگاه اینترنی دارید و قصدتان این است که خواسته‌های مشتریان را با برنامه دوم‌تان، تحلیل و پردازش کنید. + +فروشگاه فرضی ما با NodeJS و برنامه‌‌ای که اطلاعات کاربران را تحلیل می‌کند با Python توسعه داده شده است و به‌ترتیب شناسه‌‌های برنامه‌های ما، market و market-ai هستند. حال براساس سناریو فعلی نیاز داریم که مشخصات کاربران را از فروشگاه به برنامه market-ai ارسال کنیم و این کار به شکل زیر انجام خواهد شد: +
+ +
+ + {`const axios = require('axios') + +axios +.post('http://market-ai:2597/analyze', { + age: '26', + weight: '110', + height: '190' +}) +.then(res => { + console.log(\`statusCode: \${res.status}\`) + console.log(res) +}) +.catch(error => { + console.error(error) +})`} + +
+
+ +

+توجه داشته باشید که برای دسترسی یک برنامه به برنامه‌ای دیگر، هر دو برنامه باید در یک شبکه خصوصی مشترک قرار گرفته باشند و تنها کافی است که شناسه‌‌ی برنامه به‌عنوان host وارد شود و همچنین فراموش نکنید که مقادیر port و endpoint را مشخص کنید. +

+
+ + +
+از آنجایی که سرعت و امنیت از شاخصه‌های کلیدی برنامه‌‌های شما هستند و به همین منظور می‌خواهید فقط برنامه‌‌های شما به دیتابیس‌هایتان دسترسی داشته باشند. بنابراین در قدم اول باید دسترسی از طریق شبکه‌ی عمومی را در زمان راه‌اندازی دیتابیس غیرفعال کنید. +
+db access in private network +
+ +

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

+
+ +درنهایت پس از راه‌اندازی دیتابیس و انتخاب شبکه خصوصی، می‌توانید وارد بخش نحوه‌ی اتصال دیتابیس شده و از آن اطلاعات برای اتصال به دیتابیس خود استفاده کنید. توجه داشته باشید فقط در صورتی می‌توانید یک برنامه را به دیتابیس متصل کنید که هر دو در یک شبکه خصوصی مشترک قرار گرفته باشند. +
+db connection in private network +
+ +
+برای این‌که راحت‌تر برنامه‌ها و دیتابیس‌های درون یک شبکه خصوصی مشترک را تشخیص دهید، می‌توانید از رنگ‌بندی متمایز هر شبکه که در کنار سطر هر برنامه قرار گرفته است، استفاده کنید؛ بدیهی است که برنامه‌های با رنگ یکسان، در یک شبکه خصوصی مشترک قرار دارند: +
+different private networks +
+ + \ No newline at end of file diff --git a/src/pages/paas/details/static-ip.mdx b/src/pages/paas/details/static-ip.mdx new file mode 100644 index 00000000..d32b8c6b --- /dev/null +++ b/src/pages/paas/details/static-ip.mdx @@ -0,0 +1,35 @@ +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 PlatformIcon from "@/components/Common/icons"; +import { + GoArrowLeft, +} from "react-icons/go"; + + +# آی‌پی ثابت + +
+زمانی که یک برنامه جدید در لیارا ایجاد می‌کنید، به صورت پیش‌فرض، آی‌پی برنامه‌تان متغیر خواهد بود و ممکن است به صورت دوره‌ای این IP تغییر کند. از عمده دلایل این کار، افزایش سرعت، بهینه‌سازی و و بهبود مصرف منابع هست و این کار، هیچ مشکلی در برنامه شما، ایجاد نخواهد کرد. + +
+لیارا این امکان را برای‌تان فراهم کرده که در برنامه خود از آی‌پی ثابت اشتراکی نیز برخوردار باشید. برای اینکه تمام درخواست‌های خروجی برنامه با یک IP ثابت صورت بگیرد. شما باید وارد قسمت تنظیمات برنامه خود شده و گزینه فعال‌کردن آی‌پی ثابت را روشن کنید: +
+enable-static-ip +
+پس از انجام این کار، یک IP ثابت به برنامه شما تعلق می‌گیرد که در بخش اطلاعات کلی نیز، می‌توانید آن را مشاهده بفرمایید؛ به عنوان مثال: +
+see-static-ip-info + +
+آی‌پی که در اختیار شما قرار گرفته، ممکن است به چندین برنامه‌ی دیگر هم در لیارا اختصاص داده شده باشد. یعنی آی‌پی ثابتی که لیارا به شما می‌دهد اشتراکی است و مانند VPS ها اختصاصی نیست. این مورد مشکل خاصی برای‌تان ایجاد نمی‌کند و می‌توانید با خیال راحت، IP خود را به بانک یا سرویس مورد نظرتان بدهید. + + + \ No newline at end of file