نصبکننده خودکار پارلی چت. بکاند (Sova)، فرانتاند (Mura)، nginx به عنوان ریورس پروکسی SSL، و سرویسهای systemd را در یک دستور راهاندازی میکند.
- لینوکس (x86_64 یا arm64)
- دسترسی روت (
sudo) wgetیاcurl(برای نصب محلی لازم نیست)
اگر nginx نصب نباشد، به صورت خودکار نصب میشود.
wget https://github.com/Parley-Chat/installer/releases/latest/download/install.sh -O install.sh
chmod +x install.sh
sudo ./install.shیا با curl:
curl -fsSL https://github.com/Parley-Chat/installer/releases/latest/download/install.sh -o install.sh
chmod +x install.sh
sudo ./install.shفایلهای release را روی هر دستگاهی دانلود کنید، به سرور منتقل کنید، از حالت فشرده خارج و اجرا کنید:
tar xzf parley-install.tar.gz
chmod +x installer-linux-x64 # یا installer-linux-arm64
sudo ./installer-linux-x64نصبکننده به صورت خودکار تشخیص میدهد که sova-linux-<arch> و mura.zip در همان دایرکتوری وجود دارند و از آنها استفاده میکند بدون اینکه چیزی دانلود کند.
اگر دسترسی به گیتهاب ندارید، میتوانید از یک آینه جایگزین استفاده کنید:
wget https://آدرس-آینه.com/install.sh -O install.sh
chmod +x install.sh
sudo MIRROR_BASE_URL="https://آدرس-آینه.com" ./install.shنصبکننده و تمام فایلهای مورد نیاز (Sova، Mura) از آینه مشخصشده دانلود میشوند.
هنگام اجرای نصبکننده، یکی از گزینههای زیر را انتخاب میکنید:
[I] Install — نصب
[U] Update — بهروزرسانی
[M] Modify — تغییر تنظیمات
[X] Uninstall — حذف
برای نصب جدید، ابتدا یکی از حالتهای زیر را انتخاب میکنید:
Recommended (پیشنهادی) فقط دامنه یا آیپی سرور، پیشوند URI، رمز instance (اختیاری) و نوع SSL را میپرسد و بقیه تنظیمات را با مقادیر پیشفرض انجام میدهد.
Custom (سفارشی) امکان تنظیم پورت HTTPS، مسیر نصب، رمز instance، تعداد threads، تماس صوتی و موارد دیگر را میدهد.
در پایان نصب، از شما پرسیده میشود آیا میخواهید بهروزرسانی خودکار را فعال کنید (جزئیات در پایین).
آخرین نسخه باینری Sova و فرانتاند Mura را دانلود و جایگزین میکند و سرویس بکاند را ریاستارت میکند. فایل config.toml، گواهیهای SSL و دادههای شما دستنخورده باقی میمانند.
در حالت محلی هم کار میکند :کافی است sova-linux-<arch> و mura.zip جدید را کنار نصبکننده قرار دهید.
تغییر تنظیمات پس از نصب بدون نیاز به نصب مجدد:
- تجدید گواهی SSL: همان فرآیند تنظیم SSL حین نصب (همان گزینهها)؛ فایل
nginx.confبهروز میشود و nginx به صورت خودکار ریاستارت میشود - فعال/غیرفعال کردن بهروزرسانی خودکار: مدیریت cron job روزانه
سرویسها را متوقف و غیرفعال میکند، فایلهای systemd را حذف میکند و دایرکتوری نصب را پاک میکند.
| گزینه | کاربرد |
|---|---|
| خود-امضا (Self-signed) | آیپی، شبکه داخلی، یا هر جایی پشت فایروال |
| Let's Encrypt - HTTP | دامنه عمومی با پورت ۸۰ باز. تمدید خودکار دارد. |
| Let's Encrypt - DNS | دامنه عمومی پشت فایروال (مثل سرورهای ایرانی). نیاز به اضافه کردن یک رکورد TXT در DNS دارد. هر ۹۰ روز باید دستی تمدید شود. |
| استفاده از گواهی موجود | گواهی و کلید خصوصی (فرمت PEM) از قبل دارید؛ مسیر فایلها را وارد میکنید. |
اگر به جای دامنه، آیپی وارد کنید، به صورت خودکار از گواهی خود-امضا استفاده میشود چون Let's Encrypt به دامنه نیاز دارد.
هنگام نصب (فقط در حالت آنلاین)، نصبکننده میپرسد آیا میخواهید بهروزرسانی خودکار داشته باشید. در صورت فعالسازی، زمانبندی را انتخاب میکنید:
| گزینه | زمانبندی |
|---|---|
| هر ۵ دقیقه | */5 * * * * |
| هر ساعت | 0 * * * * |
| روزانه ساعت ۳ بامداد | 0 3 * * * |
| روزانه ساعت ۴ بامداد | 0 4 * * * |
| سفارشی | هر عبارت cron دلخواه |
نصبکننده فایل auto-update.sh را در دایرکتوری نصب مینویسد و یک cron job ثبت میکند. در هر اجرا، فایل version.txt از آینه دریافت و با فایل .version محلی مقایسه میشود ,فقط در صورت وجود نسخه جدید، دانلود و ریاستارت انجام میشود. خروجی بهروزرسانی در /var/log/parley-chat-update.log ذخیره میشود.
در هر زمان میتوانید از منوی Modify بهروزرسانی خودکار را فعال یا غیرفعال کنید.
| فایل | توضیح |
|---|---|
sova |
باینری بکاند |
mura/ |
فایلهای استاتیک فرانتاند |
config.toml |
تنظیمات Sova |
certs/ |
گواهی SSL خود-امضا (اعتبار ۱۰ ساله) |
nginx.conf |
تنظیمات ریورس پروکسی nginx |
auto-update.sh |
اسکریپت بهروزرسانی خودکار (در صورت فعالسازی) |
.install_info |
تنظیمات ذخیرهشده برای منوی Modify |
parley-chat.service |
سرویس systemd برای Sova |
parley-chat-nginx.service |
سرویس systemd برای nginx |
همه چیز به صورت پیشفرض در /opt/parley-chat نصب میشود (در حالت Custom قابل تغییر است).
نمونه شما از طریق https://<دامنه-یا-آیپی>:<پورت>/<پیشوند-URI>/ قابل دسترس خواهد بود.
در صورت استفاده از گواهی خود-امضا، در اولین بازدید مرورگر هشداری نشان میدهد. روی Advanced ← Proceed کلیک کنید تا ادامه دهید.
# بررسی وضعیت
systemctl status parley-chat
systemctl status parley-chat-nginx
# ریاستارت
systemctl restart parley-chat
systemctl restart parley-chat-nginx
# توقف
systemctl stop parley-chat
systemctl stop parley-chat-nginx