سادهترین نوع استقرار
اگر index.html در ریشه باشد، همان پوشه سرو میشود. اگر سایت را با ابزاری مثل Vite، Hugo، Eleventy یا Next.js export میسازید، buildCommand و outputDir را در sakoocloud.json بنویسید تا اول بیلد و بعد سرو شود.
nginx فایلها را با gzip سرو میکند و با spa: true مسیرهای ناشناخته را به index.html برمیگرداند. منابع زمان اجرا نزدیک صفر است، پس سایت استاتیک ارزانترین نوع استقرار است.
مناسب برای
- لندینگ و سایت شرکتی
- مستندات و بلاگ
- خروجی Hugo، Eleventy یا Jekyll
- اپ تکصفحهای بیلدشده
مسیر استقرار سایت استاتیک
تشخیص
index.htmlدر ریشه یاoutputDirدرsakoocloud.json.index.htmlبیلد (اختیاری)
اگر
buildCommandتعریف شده باشد، اجرا میشود.npm run buildسرو
پوشهی خروجی با nginx روی پورت 80 سرو میشود.
nginx :80
خروجی یک استقرار واقعی
sakoocloud deploy ✔ Packed 0.5MB ✔ Source uploaded ℹ Build started · dep_7k2m9q #4 [builder 1/4] FROM node:22-alpine #6 [builder 3/4] RUN npm run build #8 [stage-1 1/2] FROM nginx:alpine #10 [stage-1 2/2] COPY dist /usr/share/nginx/html #12 exporting to image ✔ Deployed — app is running. → https://my-site.sakooapps.ir
تنظیم برای سایتی که بیلد دارد
اگر فقط HTML دارید، به این فایل هم نیازی نیست.
{
"runtime": "static",
"buildCommand": "npm run build",
"outputDir": "dist",
"spa": false
}
sakoocloud apps create --name my-site --runtime static --port 80
sakoocloud deploy
تنظیمات
پوشهی خروجی ابزارهای رایج
| ابزار | outputDir |
|---|---|
| Vite، Astro | dist |
Next.js با output: export | out |
| Hugo | public |
| Eleventy | _site |
| Create React App | build |
sakoocloud.json
| فیلد | کاربرد |
|---|---|
buildCommand | دستور بیلد |
outputDir | پوشهای که سرو میشود |
spa | برگرداندن مسیرهای ناشناخته به index.html |
همراه هر استقرار
اینها به رانتایم بستگی ندارند و برای هر اپ روی سکو کلود فعالاند. بعضی، مثل مقیاسدهی خودکار و کرانجاب، به پلن بستگی دارند.
- دامنهی اختصاصی و SSLدامنه را اضافه کنید؛ گواهی خودکار صادر و تمدید میشود.
- متغیرهای محیطی و سکرتمقادیر رمزگذاریشده فقط در زمان اجرا به اپ میرسند.
- مرحلهی انتشارmigration بعد از بیلد و پیش از جایگزینی نسخهی قبلی اجرا میشود.
- لاگ زندهلاگ بیلد و زمان اجرا، در CLI و کنسول.
- بازگشت به نسخهی قبلهر استقرار قبلی با یک دستور برمیگردد.
- مقیاسدهیمنابع و تعداد نمونهها را تغییر دهید یا خودکارش کنید.
- دیسک ماندگاربرای فایلهایی که باید بعد از هر استقرار بمانند.
- کرانجابدستور زمانبندیشده با همان ایمیج و متغیرها.
- استقرار خودکار با گیتهر push روی شاخهی هدف بیلد و مستقر میشود.
خطاهای رایج
صفحهی ۴۰۴ nginx
علتoutputDir با پوشهی خروجی بیلد یکی نیست یا index.html در آن نیست.
راهحلمسیر خروجی را در sakoocloud.json اصلاح کنید.
با رفرش یک مسیر داخلی، ۴۰۴ برمیگردد
علتمسیرهایی مثل /dashboard فایل واقعی ندارند و روتر سمت مرورگر آنها را میسازد.
راهحلدر sakoocloud.json حالت SPA را روشن کنید تا مسیرهای ناشناخته به index.html برگردند.
{
"outputDir": "dist",
"spa": true
}
بیلد شکست میخورد
علتلاکفایل کامیت نشده یا buildCommand اشتباه است.
راهحللاکفایل را کامیت کنید و دستور را محلی امتحان کنید.
پرسشهای متداول
سایت استاتیک چقدر منابع مصرف میکند؟
بسیار کم؛ nginx فقط فایل سرو میکند و با کوچکترین پلن هم کار میکند.
میتوانم چند دامنه وصل کنم؟
بله. هر دامنه را جدا اضافه کنید؛ گواهی SSL برای هر کدام خودکار صادر میشود.
فرم تماس سایت استاتیک را کجا پردازش کنم؟
در یک تابع بدون سرور یا یک API کوچک Node.js یا Python کنار سایت.
جزئیات بیشتر در راهنمای سایت استاتیک در مستندات و مرجع CLI.